zoukankan      html  css  js  c++  java
  • 2020系统综合实践 第1次实践作业

    (1)课程调查

    进入大三下学期的后半段,大学阶段的理论课程应该已经修得八九不离十了,在这个时间点迎来系统综合实践这门课,作为培养计划的一门新课程,我们非常希望了解你们对于课程的希望,请写下你对这门课的认识和你理想中的这门课程是怎么样的。

    我对这门课的认识,一开始以为是系统结构的实验课。。在机房操作的实验,类似接口那种实验,然后今天早上发现居然有博客园,居然要用虚拟机,觉得好像有点不对劲。
    我理想中的这门课能让我加深对系统综合实践的理解,大家都能够很好的完成,顺利毕业。

    (2)了解微服务

    第一次作业我们将接触一种新型的软件架构——微服务(也许部分同学已经有所了解)。大家要做的是学习并了解该技术,微服务是什么,有什么特点,相较于传统的软件架构,它有什么优缺点,它是怎样部署的。

    我之前并不了解什么是微服务,上网查询中觉得这个解释很好

    看军事新闻的同学应该都知道,一艘航空母舰作战能力虽然很强,但是弱点太明显,就是防御能力太差,单艘的航空母舰很少单独行动,通常航空母舰战斗群才是主要军事力量,你可以把单艘航母理解为的单体应用(防御差,机动性不好),把航母战斗群(调度复杂,维护费用高)理解为微服务。

    简单讲就是要分解业务,让服务能够独立运行,一系列微服务共同构建起整个系统。

    微服务特点:

    • 针对特定服务发布,影响小,风险小,成本低
    • 频繁发布版本,快速交付需求
    • 低成本扩容,弹性伸缩,适应云环境

    微服务优点:

    • 每个微服务都很小,这样能聚焦一个指定的业务功能或业务需求。

    • 微服务能够被小团队单独开发,这个小团队是2到5人的开发人员组成。

    • 微服务是松耦合的,是有功能意义的服务,无论是在开发阶段或部署阶段都是独立的。

    微服务缺点:

    • 微服务架构可能带来过多的操作。
    • 因为分布部署跟踪问题难。

    (3)学习docker技术

    docker作为微服务的一种十分典型的代表技术,我们要做的是:

    • 学习了解docker的相关概念(容器、镜像等),了解docker、docker compose、Dockerfile、docker machine、Swarm、k8s是什么,是做什么用的,心中有概念即可;

    docker:

    docker是一个开源的应用容器引擎,开发者可以打包自己的应用到容器里面,然后迁移到其他机器的docker应用中,可以实现快速部署。如果出现的故障,可以通过镜像,快速恢复服务。

    docker compose:

    Compose 是用于定义和运行多容器 Docker 应用程序的工具。

    Dockerfile:

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

    docker machine:

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

    Swarm:

    Docker Swarm 是 Docker 的集群管理工具。它将 Docker 主机池转变为单个虚拟 Docker 主机。 Docker Swarm 提供了标准的 Docker API,所有任何已经与 Docker 守护程序通信的工具都可以使用 Swarm 轻松地扩展到多个主机。

    k8s:

    k8s是一个编排容器的工具,其实也是管理应用的全生命周期的一个工具,从创建应用,应用的部署,应用提供服务,扩容缩容应用,应用更新,都非常的方便,而且可以做到故障自愈,例如一个服务器挂了,可以自动将这个服务器上的服务调度到另外一个主机上进行运行,无需进行人工干涉。

    • 搭建你自己的docker环境,系统环境不限(主流的有Ubuntu/CentOS/Debian/Windows/MacOS等),完成docker的基本入门,包括但不限于:容器的创建、删除、更新和查询,创建并维护自己的镜像仓库,实现拉取和上传镜像等。

      docker的安装,一开始我没有按照老师给的教程,而是自己搜索,然后安装失败了,后来重新开始,挺成功的完成了。

    ​ 查看版本

    ​ 删除之前安装一半失败了的残余。

    ​ 安装成功

    ​ 后台创建一个容器,-d可以使容器后台运行,不进入,后面再使用 attach 进入该终端

    使用exit命令,退出容器,最后使用 rm -f 删除该容器。

    使用ps 检查发现容器已经被删除完成了。

    教程里还有一个简单的,运行一个web应用,首先pull一个镜像下来,然后在容器里运行。-P是让容器内部的网络端口映射到我们的主机上,使用ps命令查看容器,用浏览器访问web应用。

    ​ 然后先用stop停止容器,再进行rm删除。

    首先先在dockerhub仓库链接:docker hub上创建账号并创建自己的仓库,并在本地使用login登录。

    使用 images 命令查看一下现在拥有的镜像。

    使用search 命令在官方的仓库中搜索,并用pull将它拉下来,使用images查看,拉取成功。

    使用 tag命令 命名成新的firstone,然后使用push命令上传到我的仓库里。

    上传成功~

  • 相关阅读:
    node项目发布pm2
    图片地址获取图片信息
    前端文件上传 获取文件大小 获取图片宽高
    前端上传图片预览
    vue按钮防暴力点击
    小程序父子组件之间的通信
    form表单
    es6-函数的扩展
    php的魔术常量以及类的模式方法
    OpenStack笔记
  • 原文地址:https://www.cnblogs.com/sayoko/p/12683146.html
Copyright © 2011-2022 走看看