SOA和微服务的区别
其实服务化架构已经可以解决大部分企业的需求了,那么我们为什么要研究微服务呢?先说说它们的区别;
微服务架构强调业务系统需要彻底的组件化和服务化,一个组件就是一个产品,可以独立对外提供服务
微服务不再强调传统SOA架构里面比较重的ESB企业服务总线
微服务强调每个微服务都有自己独立的运行空间,包括数据库资源。
微服务架构本身来源于互联网的思路,因此组件对外发布的服务强调了采用HTTP Rest API的方式来进行
微服务的切分粒度会更小
总结:微服务架构是 SOA 架构思想的一种扩展,更加强调服务个体的独立性、拆分粒度更小。
为什么考虑Spring Cloud
Spring Cloud来源于Spring,质量、稳定性、持续性都可以得到保证
Spirng Cloud天然支持Spring Boot,更加便于业务落地。
Spring Cloud发展非常的快,从16年开始接触的时候相关组件版本为1.x,到现在将要发布2.x系列
Spring Cloud是Java领域最适合做微服务的框架。
相比于其它框架,Spring Cloud对微服务周边环境的支持力度最大。
对于中小企业来讲,使用门槛较低。
Spring Cloud 是微服务架构的最佳落地方案
分布式/版本化配置
服务注册和发现
路由
服务和服务之间的调用
负载均衡
断路器
分布式消息传递
这些特性都是由不同的组件来完成的,在架构的演进过程中扮演着重要的角色。