微服务是一个新概念,但这绝不是一个全新架构,更不是一个包治百病的架构。由于有服务二字,很容易让人联想到面向服务架构(SOA),其实微服务架构属于应用技术架构,和以B/S 为代表的三层架构相对应,强调将巨石型应用拆分为由微服务组成的应用,在数据上也视情况从集中的存储拆解为更小的存储单元。而SOA属于企业架构的范畴,从企业架构出发把业务分解为不同领域的服务,不同物理系统提供不同服务,注重系统之间通过服务互联互通的规范,对服务如何实现并不关注。因此,面向服务架构的服务应该是一个业务意义的服务,而微服务是系统中的技术服务,更关注服务的实现,虽然提供了业务意义的服务,但是不能混为一谈。微服务使用也不是无限度的,事实上由于数据一致性等问题的限制,不能无限度拆分微服务,可以把微服务分为系统对外提供的远程服务、系统内部的远程服务和系统内部的本地服务,显式声明、明确职责。事实上,在企业架构上使用SOA支撑业务,而在应用技术架构上使用微服务架构,是一个合适的选择。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。