zoukankan      html  css  js  c++  java
  • 第1次实践作业

    第1次实践作业

    (1)课程调查

    ​ 对课程的认识:应该是过往综合知识系统的应用,希望这门课可以让我学到更多的知识和技能。

    (2)了解微服务

    • 微服务是什么

      • 微服务 (Microservices) 是一种软件架构风格,它是以专注于单一责任与功能的小型功能区块 (Small Building Blocks) 为基础,利用模块化的方式组合出复杂的大型应用程序,各功能区块使用与语言无关 (Language-Independent/Language agnostic) 的 API 集相互通信。
    • 微服务的特点

      +单一职责:每个微服务都需要满足单一职责原则,微服务本身是内聚的,因此微服务通常比较小。

      • 自治:一个微服务就是一个独立的实体,它可以独立部署、升级,服务与服务之间通过REST等形式的标准接口进行通信,并且一个微服务实例可以被替换成另一种实现,而对其它的微服务不产生影响。
    • 微服务的优点

      • 逻辑清晰:一个仅负责一项很明确业务的微服务,在逻辑上肯定比一个复杂的系统更容易让人理解。
      • 简化部署:微服务则可以对一个微服务进行部署,避免对整个系统部署的复杂。
      • 可扩展:因为不同的功能会面对不同的负荷变化,采用微服务的系统相对单块系统具备更好的可扩展性。
      • 灵活组合:在微服务架构中,可以通过组合已有的微服务以达到功能重用的目的。
      • 技术异构:微服务间松耦合,不同的微服务可以选择不同的技术栈进行开发。
      • 高可靠:微服务间独立部署,一个微服务的异常不会导致其它微服务同时异常。
    • 微服务的缺点

      • 复杂度高:微服务间交互的异常情况更多更复杂,导致代码逻辑更加复杂。采用不同的数据库,保证一致性也是困难的地方。微服务的开发成本更大。
      • 运维复杂:在采用微服务架构时,系统由多个独立运行的微服务构成,需要一个设计良好的监控系统对各个微服务的运行状态进行监控。
      • 影响性能:相对于Monolithic架构,微服务的间通过REST、RPC等形式进行交互,通信的时延会受到较大的影响。

    (3)学习docker技术

    1.docker相关概念

    • 镜像:Docker镜像(Image),就相当于是一个root文件系统。

    • 容器:镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态 的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等 。

    • Docker: Docker是一个开放源代码软件,是一个开放平台,用于开发应用、交付(shipping)应用、运行应用.Docker允许用户将基础设施(Infrastructure)中的应用单独分割出来,形成更小的颗粒(容器),从而提高交付软件地速度。

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

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

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

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

    • K8S,就是基于容器的集群管理平台,它的全称,是kubernetes, 是用于自动部署,扩展和管理容器化应用程序的开源系统。

    2.搭建docker环境

    • 更新 apt 包索引。

      $ sudo apt-get update
      
    • 安装 apt 依赖包,用于通过HTTPS来获取仓库:

      $ sudo apt-get install 
        apt-transport-https 
        ca-certificates 
        curl 
        gnupg-agent 
        software-properties-common
      
    • 添加 Docker 的官方 GPG 密钥:

      $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
      
    • 验证现在是否拥有带有指纹的密钥。

      $ sudo apt-key fingerprint 0EBFCD88
      
    • 设置稳定版仓库

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

      $ sudo apt-get install docker-ce docker-ce-cli containerd.io
      
    • 测试是否成功

      $ sudo docker run hello-world
      

    3.docker的基本入门

    ​容器的创建:

    ​容器的删除:

    ​容器的查询:

    ​创建仓库:在dockerhub注册自己的账号,在docker中登录

    ​上传镜像:
    登录网址可以看到上传成功

    ​导入镜像:

    拉取镜像:

  • 相关阅读:
    PBRT笔记(3)——KD树
    PBRT笔记(2)——BVH
    PBRT笔记(1)——主循环、浮点误差
    《Ray Tracing in One Weekend》、《Ray Tracing from the Ground Up》读后感以及光线追踪学习推荐
    在Node.js中使用ffi调用dll
    Node.js c++ 扩展之HelloWorld
    在Qt中配置TBB以及简单实用
    对《将Unreal4打包后的工程嵌入到Qt或者桌面中》一文的补充
    QtQuick大坑笔记之Http的Get与Post操作(带cookie)
    QtQuick自定义主题以及控件样式指引
  • 原文地址:https://www.cnblogs.com/replusone/p/12718683.html
Copyright © 2011-2022 走看看