上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
第2章 微服务解决方案之Spring Cloud
尽管微服务架构为复杂业务提供了很好的解决方案,但也给开发、测试、运维带来了非常大的挑战。站在开发人员的角度,首先,需要考虑各个微服务之间的远程通信,市场上有非常多的开源RPC框架,比如Thrift、Dubbo、Motan、gRPC等。其次,有了远程通信之后,还需要考虑服务构成大规模集群之后如何做好服务的动态感知,比如A服务要调用B服务,但是B服务部署了10个节点,那么A服务如何动态维护B服务的10个不同的地址信息呢?这就需要采用一些第三方组件来管理目标服务的地址。
在微服务一体化解决方案出现之前,各个公司在实现服务化的过程中都比较痛苦,不仅仅需要对各种开源技术进行横向对比及整合,还需要针对公司内部业务的特性对这些开源组件进行包装和优化。笔者就经历了这样一个痛苦的过程,直到Spring Cloud出现。
Spring Cloud是Pivotal公司在2015年发布的一个项目,很多人可能不知道Pivotal公司,Spring就是Pivotal公司研发的。
本章会围绕业内比较主流的微服务解决方案进行分析,主要包括:
• Spring Cloud Netflix
• Spring Cloud Alibaba