微服务-浅谈
发布日期:2022-03-29 14:04:57 浏览次数:28 分类:博客文章

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

单体架构的优势: 便于开发:只需要借助IDE的开,调试功能即可完成 易于测试:只需要通过单元测试或浏览器即完成测试  易于部署:打包成单一可执于jar/war包,执jar/war包即可部署单体架构的不足:     复杂性高        代码难以理解,各个模块逻辑复杂。        难以理解导致代码质量低,复杂性进一步增加            代码难以被修改和重构        内存泄露可能导致整个应用的崩塌(微服务可避免)               交付效率低:        构建和部署耗时长,难以定位问题,开发效率低        代码复杂和变更影响难以理解,需要数天完成全量测试        全量部署耗时长,影响范围广,风险大,发布步频次低        不能独立布署,用户体验差                伸缩性(横向扩展)差:        单体只能按整体横向扩展,无法分模块垂直扩展        IO密集型模块和CPU密集模块无法独立升级和扩容        可靠性差:        一个bug有可能引整个应用的崩溃。        难以定位问题    阻碍技术创新:        受技术栈限制,团队成员使用同一框架和语言,很难扩展        升级和变更技术框架变得困难,牵一发动全身。        尝试新语言变得困难(太重),新需求,重构导致开发成本高。微服务架构    将单体应用拆分为多个高内聚低耦合的小型服务每个小服务运动在独立进程,由不同的团队开发和维护,服务间采用轻量级通信机制,独立自动部署,可以采不同的语言及存储。(不影响进度,各司其职)优势:    易于开发和维护,    微服务相对单体应用体量更小,易于理解。    启动调试时间短,开发周期短。交付时间短。    独立部署:        不同的服务,并行迭代。(同时进行)不同于单体应用。从上至下,从1到2.        一个微服务的修改不需要协调其它服务。相对于单体应用往往存在,改一处多处报错(整个系统故障)。互不影响        单体应用往往会有改一处BUG引发多处BUG,高耦合,依赖性强。        相比微服务单体调试周期长,部署时间长,连锁反应大。            伸缩性强:        每个服务都可以在横向和纵向上扩展(单体受垂直(纵向)影响)        每个服务都可以按硬件资源的需求进行独立扩容或升级。延伸        与组织结构相匹配:        微服务架构可以更好将架构和组织相匹配(根椐不同的模块化分给不同的团队);        每个团队独立负责哪些服务(模块),获得更高的效率(生产力)        技术异构性:        使用最适合该服务的技术(跨语言实现),提供接口即可(服务者,消费者)        降低尝试新技术的成本(尝试新语言更容易)不受架构的影响        根椐不同的服务实现方式采用不同的技术栈        容错性高微服务之间通信技术:    1.rcp    2.restful   3.异步服务拆分:    微服务拆分原则:领域模型,组织架构,康威定律,单一职责    微服务拥有独立的数据库,技术栈。    微服务之间确定服务边界, 高内聚,低耦合。微服务面临的问题        数据一致性(多服务,多事务)        可靠性事件模式            补偿模式-sagas模式        服务通信        通信方案:            同步机制(http协议):RPC vs REST                跨语言,学习成本低,易上手            异步机制(通常基于TCP):AMQP(异步消息)                不方便测试 ,调试。    服务注册和发现:        注册中心:            Eureka,ZK.Consul 等等三方框架    负载均衡        nginx ,ribbon    服务网关(服务通信)        API Gateway(聚合作用,应避免业务代码)             身份认证,路由服务,安全过滤,流量控制,日志统计            高可观察        健康检测,集中监控,聚合输出        日志聚合及检索(脚手架)        分布式追踪(定位问题,优化),服务故障    可靠性        流量控制,超时控制。保证下游服务正常        舱避隔离,熔断机制(服务出错,调用次数过多)关闭服务调用功能                请求转移,        服务降级,幂等重试            服务降级策略,(网络问题),服务重试。            接口幂等性。

 

转载地址:https://www.cnblogs.com/1-Admin/p/8672589.html 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:spring mvc 跨域问题。。。解决
下一篇:Eclipse properties.config.yml 配置文件中文编码问题。Eclipse 配置文件插件解决方案

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2024年03月19日 12时04分18秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

九巨龙集团安全大检查行动,践行“客户满意工程”牢筑安全防线! 2019-04-25
最好吃的8款粽子,看看有没有你家乡的! 2019-04-25
端午前后湿热当道,这些祛湿的好方法一定要收好 2019-04-25
最好吃的8款粽子,看看有没有你家乡的! 2021-06-28
端午前后湿热当道,这些祛湿的好方法一定要收好 2021-06-28
九巨龙集团被授予“2020年全市疫情防控慈善捐助企业楷模” 2019-04-25
清徐老陈醋签约盒马与数字乡村特色新品战略合作 2019-04-25
视听·封报丨5G发展带来哪些改变?“虚拟偶像”成为追星新潮流 2019-04-25
最好吃的8款粽子,看看有没有你家乡的! 2019-04-25
第10届上海尚品家居展实力来袭,优质生产型企业加持核心优势 2019-04-25
丁磊:高合汽车下个月交付过千,刷新纪录 2019-04-25
2021乌拉盖旅游推介会暨“爱上草原”云平台发布仪式 2019-04-25
博仲兴业力作——《爱的雨季》讲述爱情的奥秘 2019-04-25
墨斗互动公益助力山西大学 毕业季,青春无畏,逐梦扬威 2019-04-25
中品丝路:在重要场所讲好中国品牌故事 2019-04-25
夏日狂欢 — BODY JAZZ两周年庆典———若水,以柔见世界 2019-04-25
京东品牌联盟:618品牌狂欢盛典-品宣销售再创历史新高 2019-04-25
五色新丝缠角粽 粽享孝养温情|九巨龙孝养城带您粽情一夏 2019-04-25
九巨龙这两学校竟麦浪滚滚!太美!太用心! 2019-04-25
高端内存的由来(为什么需要高端内存) 2019-04-25