实习的公司正在作一个基于Spring Cloud的微服务框架的项目,今天大致了解了一下整个项目的结构,及时做下笔记。linux
1.首先是微服务的概念,以及为何要建立以微服务为框架的项目。docker
参考:https://blog.csdn.net/wuxiaobingandbob/article/details/78642020?locationNum=1&fps=1安全
2.项目自己由四类微服务构成:负载均衡
3.eureka-server(注册中心)框架
微服务启动时,eureka-server必须第一个启动,它的做用就是为其余微服务提供服务发现和注册。ide
启动eureka-server以后,其余微服务启动都会注册在eureka-server微服务上。微服务
为何须要服务注册和发现?(待进一步了解)工具
参考: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.部署(待补充)