【微服务】什么是微服务架构?

微服务与docker关系


Docker 是一个开源应用容器(当然目前也分为CE和EE版本,不完全开源化,也存在收费版本),让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

Docker 作为容器工具可以把:业务逻辑容器、数据库容器、储存容器、队列容器使得软件可以拆分成若干个标准化容器,然后像搭积木一样组合起来,让彼此通信,从而形成微服务。

因此微服务很适合用 Docker 容器实现,每个容器承载一个服务。一台计算机同时运行多个容器,从而就能很轻松地模拟出复杂的微服务架构。 

微服务为什么一定要用docker?

https://www.jianshu.com/p/b585abf2177f


CAP原则

CAP原则,指的是在一个分布式系统中,Consistency(一致性)、Availability(可用性)、Partition Tolerance(分区容错性),不能同时成立。

一致性:它要求在同一时刻点,分布式系统中的所有数据备份都处于同一状态。

可用性:在系统集群的一部分节点宕机后,系统依然能够响应用户的请求。

分区容错性:在网络区间通信出现失败,系统能够容忍。

一般来讲,基于网络的不稳定性,分布容错是不可避免的,所以我们默认CAP中的P总是成立的。

一致性的强制数据统一要求,必然会导致在更新数据时部分节点处于被锁定状态,此时不可对外提供服务,影响了服务的可用性,反之亦然。因此一致性和可用性不能同时满足。



什么是微服务架构?

https://www.zhihu.com/question/65502802

https://www.cnblogs.com/skabyy/p/11396571.html


服务发现

有关服务发现的六个问题:

(1)什么是服务发现?

(2)服务发现包括哪些关键特性,为什么?

(3)服务发现带来的主要好处是什么?

(4)哪一种服务发现方案是最可靠的?

(5)实施服务发现面临的最大挑战是什么?

(6)已有的系统如何集成服务发现的功能?

六个问题带你了解服务发现

http://dockone.io/article/509


分布式系统之服务发现(Service Discovery)

https://juejin.im/post/5d746acb51882579df5800f1

你可能感兴趣的:(【微服务】什么是微服务架构?)