010-62840085 msh@sunitschina.cn 全国30+城市服务网络 · 1000+技术团队

微服务架构兴起:2014年从单体到微服务的思想转变

旭日神州技术团队 · 2014年09月10日 · 技术干货

什么是微服务?

2014年3月,Martin Fowler和James Lewis联合发表《Microservices》一文,正式定义了微服务架构风格:一组小型服务,每个服务运行在独立进程中,服务间通过轻量级机制通信,围绕业务能力构建。

一、微服务 vs SOA

很多人混淆这两个概念。SOA是粗粒度的、企业级的,通常依赖ESB总线;微服务是细粒度的、去中心化的,服务独立部署独立扩展。2014年的企业级SOA实施往往非常笨重,微服务正是对这种笨重的反叛。

二、服务怎么拆?

拆分原则:

  • 按业务领域拆分,不是按技术层拆分
  • 每个服务有自己的数据存储,不共享数据库
  • 服务间通过API通信,不走数据库直连
  • 先拆最独立、变化最频繁的模块

三、分布式的代价

微服务不是银弹。拆成多个服务后,原来的本地方法调用变成了网络调用:网络延迟、分布式事务、服务发现、链路追踪,这些问题在单体时代都不存在。2014年我们给客户的建议是:如果团队不超过20人,先把单体设计好,别急着上微服务。

四、我们的实践

2014年我们开始在新的电商项目中试点微服务:用户服务、商品服务、订单服务独立部署。运维复杂度确实上升了,但团队独立迭代的效率明显提升。这个经验在后续几年成为我们服务中大型客户的标准架构方案。

本文关键词:微服务,架构设计,SOA,分布式系统
← 上一篇(更新)
P2P平台风控系统开发案例:日均千万级交易的风控实践
下一篇(更早) →
IT人力外包供应商管理体系:甲方企业如何高效管理人天

相关推荐

准备好开启您的数字化转型之旅了吗?

1000+技术团队 · 5000+企业客户 · 15年行业经验,期待与您合作