码迷,mamicode.com
首页 > 其他好文 > 详细

2020系统综合实践(一)

时间:2020-04-15 00:58:29      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:版本   代码   ima   docker   apt   软件应用   命令   服务器   ssl https   

(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系统综合实践(一)

标签:版本   代码   ima   docker   apt   软件应用   命令   服务器   ssl https   

原文地址:https://www.cnblogs.com/ycj202595/p/12694441.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!