博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring cloud微服务主要组件作用和架构介绍
阅读量:7023 次
发布时间:2019-06-28

本文共 1041 字,大约阅读时间需要 3 分钟。

解决什么问题

→spring cloud是什么,解决什么问题;

→spring cloud通过什么组件相互解决问题,以及组件相互间的协作情况;

→spring cloud不适用的情况,以及使用时需要注意的情况问题;

→后续持续更新各组件的介绍、整合配置、原理分析、源码导读等,使整个架构能够实施到生产环境。

Spring Cloud是什么

引用官方的说明(懒得看这个):

Spring Cloud为开发人员提供了快速构建分布式系统中的一些通用模式(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁,领导选举,分布式 会话,群集状态)。 分布式系统的协调导致了锅炉板模式,并且使用Spring Cloud开发人员可以快速地站起来实现这些模式的服务和应用程序。 它们可以在任何分布式环境中正常工作,包括开发人员自己的笔记本电脑,裸机数据中心和受管平台,如Cloud Foundry。

为什么使用Spring Cloud

→有spring这个爸爸,在企业级开发框架中无人能及,社区活跃确保后续的更新、完善。

→生态圈庞大,提供了一整套服务治理的子项目,几乎方方面面都考虑到,能让开发者快速的上手实现自己的应用。

→组件整合方便,开发开箱即用。

→spring cloud活跃度很高,教程很丰富,遇到问题很容易找到解决方案。

→spring cloud微服务相较soa的架构更偏向于“云”的思想。当公司有需求把系统迁移到云时,迁移成本更低。

→spring cloud微服务更容易做多语言系统的协作整合,和其他外部服务、接口的协作也更方便。

→结合运维工具(如容器docker)、系统管理监控工具(如ELK等)、项目管理工具(如maven)、测试工具等,比较方便实现自动化的运维集成和持续开发、统一管理、热部署扩容等。从而提高开发、运维效率。

Spring Cloud Netflix微服务组件架构图

部分核心组件流程图:

热更新流程图:

Spring Cloud应用注意事项

→ 不适合小型独立的项目。可以使用spring boot开发。

→组件多,用好学习成本较高。

→入门门槛较低,精通门槛高。

→有一定的自动化运维知识,堆人方式的运维会疯掉的。

→服务拆分的颗粒度需要注意拿捏。整体的思路是以单一原则为指导,每个服务具备各自满足单一原则的服务提供。

转载于:https://juejin.im/post/5a37725ef265da4320035790

你可能感兴趣的文章
使用Visual Studio将C#生成DLL文件的方法
查看>>
设计模式值六大原则——依赖倒置原则 (DIP)
查看>>
List的基本操作实战与基于模式匹配的List排序算法实现之Scala学习笔记-23
查看>>
各类型的sizeof()值
查看>>
[LeetCode] Flatten Binary Tree to Linked List 解题报告
查看>>
Latex 写算法伪代码
查看>>
XPosed框架_简单的应用
查看>>
蓝桥杯——神奇算式(相乘与结果同数)
查看>>
python3 速查参考- python基础 7 -> 函数编程之 装饰器、生成器
查看>>
mysql操作
查看>>
行内元素图片默认顶对齐,文字是底对齐
查看>>
深入浅出讲解:php的socket通信
查看>>
防止网页被嵌套
查看>>
线性回归,多项式回归(P2)
查看>>
Session管理
查看>>
Excel两列查找重复值
查看>>
Vue Element-ui table只展开一行
查看>>
爬虫——请求库之selenium模块
查看>>
JavaScript 面向对象的编程(三) 类的继承
查看>>
redis 指定端口 启动
查看>>