- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微服务简介与技术栈
2021-12-25
这些年软件的设计规模越来越浩大,业务需求也越来越简单,针对系统的功能、高吞吐率、高稳定性、高扩展等特性提出了更高的要求。可以说业务需求是软件架构力量的第一推动力,由于这些因素导致了软件架构思想和相关技术也在发生着巨变。这些变化反应在软件架构行业里,就是我们开头越来越多的听到了很多新的词汇,比如:“分布式”、“SOA”、“微服务”、“大陆与台湾”等概念。
1
架构进展历程
现在的科学技术可以说是日新月异,进展快速。相对于我们软件设计行业也在发生着巨变,业务越来越简单,需求越来越浩大、繁杂,软件架构和部署的规模也发生着翻天覆地的变化,作为软件架构思想之一的“微服务架构”也在按着本人的规律进化着,接下来就简约的说说“微服务架构”进展经受的三个时期。
单体架构(Monolithic)
单体应用时代:应用程序无论如何分层,都是一个处理方案,或者说都是一个项目,这里的“处理方案”和“项目”不是我们使用的Visual Studio里面的概念,最终的程序代码都会在一个进程里运转。如图:
优点:开发简约,集中管理,没有分布式的损耗,都是系统进程内的通信。缺点:不好维护,升级困难,耦合严峻,无法应付高并发和大数据场景,无法快捷迭代。
只能接受同一种技术,很难用不同的言语或者相同言语不同版本开发不同模块。
系统耦合性太强,其中一个模块有问题,这个系统就会瘫痪,一个模块升级,整个系统就得停机维护。
要上线,必需一起上线,相互等待,无法快速相应市场需求。
集群负担大,假如想要集群,只能对整个系统进行集群,即便一个模块有压力。
垂直拆分
随着业务规模的越来越浩大,系统设计就越来越简单,大的系统就开头进行业务的垂直拆分。比如:有特地做商品秒宰的部门,有特地做生鲜商品的部门,有特地做超市的部门,等等,当然这是依据部门天生划分的,也有依据业务需求进行系统划分的。如图:
优点:垂直拆分,系统独立部署和维护,每个系统在本人进程内执行,分而治之。缺点:拆分越多,存储越简单,系统间反复的东西也越多,单个系统还是单体模式。
分布式服务
随着业务系统的越来越浩大,软件系统设计起来越来越简单。为了避开过度简单的业务需求,开头对业务系统的进行垂直拆分,构成多个独立的业务系统,假如多个系统之间要通信,可以通过跨进程的技术完成通讯。但是垂直拆分也导致了大量反复代码、反复模块的产生,比如:用户模块、日志模块、领取模块、认证授权模块等,这样分散的代码也给系统的维护和升级带来了困难。我们对业务重新划分,把独立的模块接口化、服务化,提高重用,这个时候,我们就开头进入了分布式服务的时代。(分布式的第一要务就是不要分布式)如图:
优点:
独立进程部署,独立进程运转,独立演化。服务之间可以做到高内聚,低耦合。
独立开发和维护,业务解耦,无论是业务系统还是分布式服务都独立演化。
分布式管理
隔离性添加
由一系列服务组装成系统,不用反复建设,模块、代码可以复用。
缺点:
数据全都性(多服务完成一个任务)和系统的可用性(集群)成为问题
数据库也进行了拆分
维护、设计、架构成本添加,调试、纠错更难
网络传输分布式损耗成本
不适合高并发和大数据的环境
微服务架构
微服务的消灭时分布式架构已经很成熟了,架构中各种问题已经有了很成熟的处理方案,对于现在的业务系统来说,分布式架构已经变成了一种常规手段,这个时候,微服务就消灭了。微服务架构是一个用分布式服务拆分业务规律,完成解耦的架构模式(架构风格)。微服务确定是分布式的一种,是在分布式技术成熟之后,然后把分布式当成解耦手段来架构系统——由于拆分的服务很细致,服务数量规模开头变多了,服务的体量开头缩小了,由以前几个大的服务,转变为多个独立运转的、原子性质的服务。如图:
微服务最重要的特性是:
可用性:描述一个系统在一段时间内供应有用资源的力量,从而削减停工时间,而保持其服务的高度可用性。
伸缩性:依据需求动态添加和删除系统中资源的力量,是水平或垂直扩展的特地实现。
集群(负载均衡)可以处理系统的高可用和伸缩特性。优点:
可以使用不同言语或者相同言语的不同版本开发各个模块。
系统耦合性低,各个模块分而治之,独立部署,独立发布,独立维护。
可以更快的相应市场的需求,更符合灵敏开发。
可以对不同模块使用集群策略,哪里有问题治哪里。
缺点:
开发难度更大,系统结构更简单。
运转效率低,网络调用成本很大。
SOA面对服务架构
Service-Oriented Architecture面对服务架构:是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和协议联系起来。如图:
2
微服务架构的进展历程
我们要处理微服务的高可用和可伸缩的两个问题,自然就
您可能关注的文档
最近下载
- 最校苏教版五年级数学同步思维训练(上册).pdf VIP
- 1. 香港公司註冊證明書.pdf VIP
- 【港交所-2025研报】卓能(集团) 截至二零二四年十二月三十一日止六个月中期业绩报告.pdf VIP
- 2025四川内江市隆昌市兴晟产业投资集团有限公司招聘13人考试备考题库及答案解析.docx VIP
- ISO9001、ISO14001、ISO45001三标一体内部审核检查表.pdf VIP
- 2019年天津房地产市场回顾及2020年展望 .pdf VIP
- 外研版高中英语选择性必修一Unit-3-The-road-to-success.pptx VIP
- 苏州供电公司业务流程优化设计项目转变管理培训.pptx
- 德语动词词根词缀记忆法.docx VIP
- 6425. 2020年1-9月房地产行业数据点评:投资高位攀升,销售维持韧性.pdf VIP
文档评论(0)