2020系统综合实践

Posted ycj202595

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2020系统综合实践相关的知识,希望对你有一定的参考价值。

(1)、课程调查

在没上这门课之前,我以为是类似操作系统的实践课。上课之后,觉得有点软工实践的味道了。认识现在倒是还没什么深刻的认识,只是希望踏踏实实跟着老师的节奏走,认认真真学一些实用的技术。

(2)、微服务

什么时微服务

微服务最初是由Martin Fowler提出来的他的理解如下:微服务架构就是将单一程序开发成一个微服务,每个微服务运行在自己的进程中,并使用轻量级的机制通信,通常是HTTP RESTFUL API。这些服务围绕业务能力来划分,并通过自动化部署机制来独立部署。这些服务可以使用不同的编程语言,不同数据库,以保证最低限度的集中式管理。
总的来说,微服务是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成该任务。在所有情况下,每个任务代表着一个小的业务能力。

微服务特点:

1、粒度小,且专注一件事情
2、单独的进程
3、轻量级应用通信机制
4、松耦合、可独立部署

与传统软件架构相比,微服务的优缺点

优点
1、提升开发交流,每个服务足够内聚,足够小,代码容易理解;
2、服务独立测试、部署、升级、发布;
3、按需定制的DFX,资源利用率,每个服务可以各自进行x扩展和z扩展,而且,每个服务可以根据自己的需要部署到合适的硬件服务器上;
4、每个服务按需要选择HA的模式,选择接受服务的实例个数;
5、容易扩大开发团队,可以针对每个服务(service)组件开发团队;
6、提高容错性(fault isolation),一个服务的内存泄露并不会让整个系统瘫痪;
缺点
1、没有银弹,微服务提高了系统的复杂度;
2、开发人员要处理分布式系统的复杂性;
3、服务之间的分布式通信问题;
4、服务的注册与发现问题;
5、服务之间的分布式事务问题;
6、数据隔离再来的报表处理问题;
7、服务之间的分布式一致性问题;
8、服务管理的复杂性,服务的编排。

(3)、学习docker技术

相关概念

Docker 是一个用于开发,交付和运行应用程序的开放平台。能够将应用程序与基础架构分开,从而可以快速交付软件。

docker compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,可以使用 YML 文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。

Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。

Docker Machine 是一种可以让您在虚拟主机上安装 Docker 的工具,并可以使用 docker-machine 命令来管理主机。

Docker Machine 也可以集中管理所有的 docker 主机,比如快速的给 100 台服务器安装上 docker。

Docker Swarm 是 Docker 的集群管理工具。它将 Docker 主机池转变为单个虚拟 Docker 主机。

K8S,就是基于容器的集群管理平台,它的全称,是kubernetes。

虚拟机Ubuntu安装docker环境

1、卸载旧版本

$sudo docker run -itd --name ubuntu-test ubuntu /bin/bash

2、更新apt

$ sudo apt-get update

$ sudo apt-get install     apt-transport-https     ca-certificates     curl     gnupg-agent     software-properties-common

3、添加Docker的官方GPG密钥

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

4、验证秘钥

$ sudo apt-key fingerprint 0EBFCD88

5、设置稳定的存储库

$ sudo add-apt-repository    "deb [arch=amd64] https://download.docker.com/linux/ubuntu    $(lsb_release -cs)    stable"

6、更新apt和安装docker引擎

 $ sudo apt-get update
 $ sudo apt-get install docker-ce docker-ce-cli containerd.io

7、验证安装完成

 $ sudo docker run hello-world

容器的创建、删除、更新、查询

载入镜像
技术图片
启动退出
技术图片
查询
技术图片

创建自己的镜像仓库

技术图片

实现上传

技术图片
技术图片

以上是关于2020系统综合实践的主要内容,如果未能解决你的问题,请参考以下文章

2020系统综合实践

20199318 2019-2020-2 《网络攻防实践》综合实践

20199301 2019-2020-2 《网络攻防实践》 综合实践

20199128 2019-2020-2 《网络攻防实践》综合实践

20199326 2019-2020-2 《网络攻防实践》综合实践

20199130 2019-2020-2 《网络攻防实践》综合大实践