《jike--微服务架构核心20讲》笔记

01.什么是微服务架构

两个大牛:马丁福勒(提出微服务架构)、前Netflix的架构总监Andrew

马丁福勒认为微服务是一种架构风格,有以下六个特点:

自己总结:微服务是一种架构风格,把功能按照业务拆分成一组组小的服务,每个服务有独立的进程、可以独立部署。

Andrew认为的微服务有以下三个特点:

即松散耦合、面向服务的架构(本质上还是soa,只不过更“落地”)、有界上下文(每个团队可以维护自己的数据源)。

 02.架构师如何权衡微服务的利弊

 

强模块化边界:刚开始用类的方式做模块化,后面用组件的方式写类库来做模块化(可重用)。微服务的层次更高一些,用服务的形式做模块化,其它人通过调用服务而不需要引入jar包。

分布式复杂性:服务数量多,难以全部理解。

最终一致性:数据分散治理,每个服务的团队有自己的数据拷贝,A团队修改了订单数据可能要同步到其它团队的相关数据。

 03.康威法则和微服务给架构师怎样的启示

 康威法则是一个名叫康威的程序员在1967年提出的。

 原话:设计系统的组织,其产生的设计和架构等价于组织的组织架构。(就是说,开发团队按业务服务划分)

 康威法则也可以看作是微服务的一个理论基础。

04.企业应该在什么时候开始考虑引入微服务

monolith:单体应用

 

“单块优先”。一开始不要直接上微服务。随着规模增大,逐步根据需要抽离模块。(有些架构是设计出来的,有些是演化出来的。)

 05.什么样的组织架构更适合微服务

 

根据前面的康威法则细化组织架构。

图上方的是传统的组织方式,沟通成本高,反馈问题的周期也长。

图下方的是基于微服务的跨职能组织方式。

 06.如何理解阿里巴巴提出的微服务中台战略

 

 07.如何给出一个清晰简洁的服务分层方式

 左边分了两层,

 08.微服务总体技术架构体系是怎样设计的

 

 09.微服务最经典的三种服务发现机制

猜你喜欢

转载自www.cnblogs.com/z-y-x/p/10840699.html