【1】服务拆分粒度:SOA 首先要解决的是异构应用的服务化;微服务强调的是服务拆分尽可能小,最好是独立的原子服务。
【2】服务依赖:传统的 SOA 服务,由于需要重用已有的资产,存在大量服务间依赖;微服务的设计理念是服务自治、功能单一独立,避免依赖其他服务产生耦合,耦合会带来更高的复杂度。
【3】服务规模:传统 SOA 服务粒度比较大,多数会采用将多个服务合并打成 war 包的方案,因此服务实例数比较有限;微服务强调尽可能拆分,同时很多服务独立部署,这将导致服务规模急剧膨胀,对服务治理和运维带来新的挑战。
【4】架构差异:微服务化之后,服务数量的激增会引起架构质量属性的变化,例如企业继承总线 ESB(实总线)逐渐被 P2P 的虚拟总线替换;为了保证高性能、低延迟,需要高性能的分布式服务框架保证微服务架构的实施。
【5】服务治理:传统基于 SOA Governance 的静态治理转型为服务运行态微服务治理、实时生效。
【6】敏捷交付:服务由小研发团队服务微服务设计、开发、测试、部署、线上治理、灰度发布和下线,运维整个生命周期支持,实现真正的DevOps。
微服务与 SOA 服务的区别
最新推荐文章于 2021-06-30 13:12:54 发布