1 ,微服务在系统中整体体现是微服务架构,而分布式后面跟的是分布式系统。
多个微服务组成一个系统,他可以分别部署在多个服务器上也可以部署在一个服务器,这种架构首要目的是解决项目功能拆分,减小项目迭代成本和风险(每次只更新和部署需要换代的服务就可以了);
而分布式系统是一个庞大的业务系统拆分成多个业务系统,每个业务系统可以采用微服务架构也可以采用单体应用架构,它的首要目的是解决庞大的用户压力或方便某个业务系统将来面对庞大的用户压力来进一步对这个子业务系统进行集群配置。
当然微服务也可以进行集群配置,系统压力主要存在两种,一种是海量用户造成的服务器压力,另一种用户不多业务复杂造成的数据库压力;对于第一种微服务集群无法解决,由此只能微服务和业务系统一起部署,这就存在一种情况,系统中只是某一块业务压力过大需要做集群,而整个业务系统做集群部署显然会浪费资源,更增加了后期的维护成本。于是业务拆分和需要部署的微服务一起打包重新成立一个子系统,这就是分布式系统。
2,Soa和微服务架构的区别
1)SOA(Service Oriented Architecture)“面向服务的架构”:他是一种设计方法,其中包含多个服务, 服务之间通过相互依赖最终提供一系列的功能。一个服务 通常以独立的形式存在于操作系统进程中。各个服务之间通过网络调用,由于网络存在中断的情况,所以往往会有中间件的存在来保证服务通信的恢复。
2)微服务架构:其实和 SOA 架构类似,微服务是在 SOA 上做的升华,微服务架构强调的一个重点是“业务需要彻底的组件化和服务化”,原有的单个业务系统会拆分为多个可以独立开发、设计、运行的小应用。这些小应用之间通过服务完成交互和集成。
微服务架构 = 面向服务的架构思想+去中心化