了解基于Spring Cloud的微服务框架

实习的公司正在作一个基于Spring Cloud的微服务框架的项目,今天大致了解了一下整个项目的结构,及时做下笔记。linux

1.首先是微服务的概念,以及为何要建立以微服务为框架的项目。docker

  • 各个微服务相互独立,不会由于其余微服务出现问题,而整个系统所有崩溃。(松耦合)
  • 各个微服务功能、职责划分明确,不会由于项目的扩大而变得冗杂混乱。(高内聚)
  • 由于每一个微服务只负责一部分功能,体积较小,因此单个启动速度要快不少,为开发人员节省大量时间。(小巧)
  • 轻量级通讯机制(待理解)
  • 微服务自己与具体技术实现无关,扩展性强(不一样微服务支持多种语言开发)

参考:https://blog.csdn.net/wuxiaobingandbob/article/details/78642020?locationNum=1&fps=1安全

2.项目自己由四类微服务构成:负载均衡

  • eureka-server
  • config-server
  • gateway
  • 其余微服务

3.eureka-server(注册中心)框架

微服务启动时,eureka-server必须第一个启动,它的做用就是为其余微服务提供服务发现和注册。ide

启动eureka-server以后,其余微服务启动都会注册在eureka-server微服务上。微服务

为何须要服务注册和发现?(待进一步了解)工具

  • 服务重启或升级后ip地址变化,注册中心能够提供统一的管理。
  • 水平伸缩后服务实例的变化。
  •  同一个节点运行多个服务
  • 负载均衡

参考:https://blog.csdn.net/zhanglh046/article/details/78651914spa

4.config-server(统一配置)操作系统

在eureka-server以后做为第二个微服务启动,其余微服务统一从config-server读取配置。

这样作的优势?

5.gateway(网关)

至关于为访问其余微服务设置了一道屏障,全部访问必须经过网关,为其余微服务提供了安全保障。

其余优势待了解。

 

其余:

6.docker和docker compose

听老大的解释docker至关于一台虚拟机,能够安装简化版的linux,以及一些应用,可是比虚拟机更有一些明显的优点。

百度百科定义:Docker 是一个开源的应用容器引擎,让开发者能够打包他们的应用以及依赖包到一个可移植的容器中,而后发布到任何流行的Linux机器上,也能够实现虚拟化,容器是彻底使用沙箱机制,相互之间不会有任何接口。

解释比较不容易理解,所以我又找了一个描述:

①了解虚拟机,虚拟机是带环境安装的一种解决方案。他能够在一种操做系统里面运行另外一种操做系统。可是也正由于它是一个完整的操做系统,它也存在这操做系统的几个缺点:资源占用多、冗余步骤多、启动慢。

②了解Linux容器,为了解决上述虚拟机的一系列缺点,Linux发展出的另外一种虚拟化技术。Linux容器不是一个完整的操做系统,而是对进程进行隔离。或者说,在正常的进程外面套了一个保护层。对于容器里面的进程来讲,他接触到的各类资源都是虚拟的,从而实现了与底层操做系统的隔离。容器有点像轻量级的虚拟机,可以提供虚拟化的环境,可是成本开销小得多。

因为容器是进程级别的,相比虚拟机也就多了不少优点:启动快、资源占用少、体积小。

③Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口。它是目前最流行的 Linux 容器解决方案。

参考:https://baijiahao.baidu.com/s?id=1591887487395526427&wfr=spider&for=pc

docker compose个人理解是一个批处理工具,简化docker的操做。(还带使用,进一步了解)

7.部署(待补充)

相关文章
相关标签/搜索