微服务架构:从理论到实践的全面解析
1. 微服务通信与扩展性
微服务之间通过消息基础设施以消息的形式交换信息,如图 3 - 6 所示。借助消息基础设施中队列或主题的持久化和耐用能力,可消除微服务之间的直接依赖。即便在用户事务处理时部分微服务不可用,业务流程仍能在这些微服务恢复后继续完成。
微服务架构具有出色的扩展性。大多数应用都有预期的生命周期,随着业务的扩展和变化,应用需要不断改变和扩展。与单体架构相比,扩展或修改微服务架构的风险更低,因为可以有选择地进行扩展或修改,这为应用开发者和运维团队减轻了很多负担。
可以用“蜂巢类比”来理解微服务架构的扩展性。蜜蜂建造蜂巢时,先建造第一个蜂房,然后不断添加更多蜂房,蜂巢会随着时间不断生长。不同蜂房的建造材料可能不同,但每个新蜂房都能与整个蜂巢融合,使蜂巢整体发挥功能。
微服务架构也是如此,将应用拆分成多个离散的部分后,可以逐个或先选择部分进行构建,并快速部署到生产环境,这大大缩短了产品上市时间,企业可以在较小规模下开始运营。例如,在电子商务应用中,可以先构建产品微服务,让用户能够访问产品目录和产品详情,为企业提供早期的网络存在。接着添加订单、运输和交付微服务,使基本的电子商务应用具备功能,让用户可以浏览商品类别并进行在线订单。后续还可以构建通知微服务,在订单状态改变时发送电子邮件和短信通知。而且,在不断添加微服务的过程中,不会影响生产数据中心中的现有微服务,它们可以继续稳定地处理流量。
2. 数字业务架构背景
我们已经从大型机时代发展到桌面时代、笔记本电脑时代,再到移动时代,并且这种发展仍在继续。智能手机时代为移动设备成为个人的亲密伙伴带来了诸多可能性,设备变得像食物、水和
超级会员免费看
订阅专栏 解锁全文
168万+

被折叠的 条评论
为什么被折叠?



