黄勇 互联网创业者
互联网创业者,技术顾问,前特赞科(kē)技 CTO,前阿里巴巴架构师,图书《架构探险》作者,Smart 开源项目作者,技术大会讲师。拥有(yǒu)十多(duō)年互联网软件架构与技术管理(lǐ)经验,擅長(cháng)敏捷开发,推崇“轻量级”架构思想。喜欢阅读,热爱交流,乐于分(fēn)享。
微服務(wù)是近年来备受欢迎的话题,它的出现让我们想起了十年前的 SOA(Service-Oriented Architecture,面向服務(wù)架构),但它比传统的 SOA 更容易理(lǐ)解,也更容易实践,它将“面向服務(wù)”的思想做得更加彻底。
当國(guó)外一些知名技术公司成功实践了微服務(wù)以后,这股热潮就吹遍了國(guó)内的大街(jiē)小(xiǎo)巷,大家街(jiē)头巷尾都在聊微服務(wù),对它众说纷纭且褒贬不一。有(yǒu)人说它非常好,但就是“玩不起”,為(wèi)何会这样呢(ne)?
我们不妨带着这个问题来简单介绍一下,究竟什么才是微服務(wù)?
微服務(wù)是一种分(fēn)布式系统架构,它建议我们将业務(wù)切分(fēn)為(wèi)更加细粒度的服務(wù),并使每个服務(wù)的责任单一且可(kě)独立部署,服務(wù)内部高内聚,隐含内部细节,服務(wù)之间低耦合,彼此相互隔离。此外,我们根据面向服務(wù)的业務(wù)领域来建模,对外提供统一的 API 接口。微服務(wù)的思想不只是停留在开发阶段,它贯穿于设计、开发、测试、部署、运维等软件生命周期阶段。
可(kě)见,我们提到的微服務(wù),实际上是一种架构思想,我们不妨称它為(wèi)“微服務(wù)架构”。
我们认為(wèi)微服務(wù)架构的本质仍然符合 SOA 思想,只不过它比 SOA 更容易落地。為(wèi)了证明这件事情,我们经过了大量的实践,借助了许多(duō)优秀的开源技术,搭建了一款“轻量级微服務(wù)架构”。实践证明,该架构不仅可(kě)以适应大中型公司的业務(wù)变化,还能(néng)满足中小(xiǎo)型公司的快速增長(cháng)。我们真心地希望这款轻量级微服務(wù)架构能(néng)够帮助更多(duō)的技术爱好者以及更多(duō)的技术团队,顺利地走出技术困境,以全新(xīn)的视角去迎接新(xīn)的挑战。
不得不提醒大家的是:微服務(wù)并不是万灵丹!它不能(néng)包治百病,我们更不要為(wèi)了微服務(wù)而去微服務(wù)。而是需要根据自身的情况,灵活地选择最合适的技术,通过技术的手段实现更高的目标。
实际内容比较丰富,会遠(yuǎn)超过所涉及的内容。
1 微服務(wù)架构理(lǐ)论 |
1.1 什么是架构? 1.2 架构师应该做什么? 1.3 架构过程是怎样演进的? 1.4 单块架构有(yǒu)哪些问题? 1.5 什么是微服務(wù)架构? 1.6 微服務(wù)架构有(yǒu)哪些挑战? 1.7 微服務(wù)架构与 SOA 有(yǒu)何區(qū)别? 1.8 何时可(kě)考虑使用(yòng)微服務(wù)架构? |
2 微服務(wù)架构设计 |
2.1 怎样设计微服務(wù)架构? 2.2 轻量级与重量级有(yǒu)何區(qū)别? 2.3 怎样做微服務(wù)架构技术选型? 2.4 有(yǒu)哪些微服務(wù)部署模式? 2.5 有(yǒu)哪些微服務(wù)调用(yòng)模式? 2.6 怎样确保分(fēn)布式数据一致性? 2.7 怎样管理(lǐ)微服務(wù)代码? 2.8 怎样搭建微服務(wù)开发团队? |
3 搭建微服務(wù)架构 |
3.1 怎样开发微服務(wù)? 3.2 怎样封装微服務(wù)? 3.3 怎样搭建微服務(wù)注册中心? 3.4 怎样搭建微服務(wù)网关? 3.5 怎样部署微服務(wù)? 3.6 怎样收集微服務(wù)输出日志(zhì)? 3.7 怎样监控微服務(wù)运行情况? 3.8 怎样追踪微服務(wù)调用(yòng)链路? |
4 微服務(wù)案例分(fēn)享 |
案例分(fēn)享 |