- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
企业应系统架构演进
企业应用系统架构演进 摘 要:企业信息化随着新技术的不断发展,也在不断进行演进,传统的单体应用架构已经存在越来越多的挑战。微服务架构具有越来越多的优势,特别是对于大型企业的应用系统,开发简单、按需扩展等优点,非常适合大型企业内部应用的统一化演进。文章主要通过对传统单体应用和微服务应用的对比,分析大型企业内部信息化应用系统的演进趋势。 中国论文网 /1/viewhtm 关键词:单体应用架构;微服务架构;微服务优点;企业应用架构趋势 中图分类号:F270.7 文献标志码:A 文章编号:2095-2945(2017)35-0120-02 1 企业应用系统传统架构 企业应用系统是利用计算机技术,形成各种软件系统,帮助企业更好地管理企业生产经营中的各种信息,以提高企业的竞争力和经济效益。由于社会的发展变化,企业经营环境也随之不断变化,因此应用系统也必须不断升级,满足新的需求。 目前经常被企业使用的软件有:财务软件、OA软件、ERP系统、客户关系管理软件、人力资源管理软件等。这些应用系统经过多年演进,从C/S架构演进为为B/S架构的,但基本上都是作为一个单元进行构建。随着软件系统的功能不断增加,这个整体变得越来越庞大。系统有任何修改,都需要重新构建并部署整个应用。原因就是上述系统采用的是一体化架构方式,称之为单体架构应用。在单体应用中,所有处理请求的逻辑都运行在单个进程中,各个逻辑之间如果需要互相调用,那么直接进行,在进行部署时,全部功能要一起部署。 2 单体架构特点 2.1 优点 单体架构的应用由于全部的应用逻辑都在一个整体中,并且运行在一个进程里面,因此,在应用的开发、测试、部署、维护、扩展方面,都具有一定的优势。 (1)易于组织 单体架构的应用是传统方式的架构,为人所熟知,对于设计、开发人员来说,最容易上手,学习成本很低。 (2)易于开发 单体架构的应用在开发时,采用传统技术和工具,易于开发调试。并且由于全部的逻辑都在一个整体之中,相互之间调用不需要考虑跨进程、跨服务器的情况,也易于软件的设计和开发。 (3)易于测试 单体架构应用程序是一个程序,因此非常容易被测试。只要部署好测试测试环境,全部功能都可以进行测试,非常方便。 (4)易于部署 对单体架构的应用程序而言,由于所有的功能最终会达成一个安装包,因此对安装包的安装比较简单,一般只要拷贝到服务器相应的目录下,修改一定的配置后,就部署完成了。 (5)易于维护 单体架构的应用运行?r,是作为一个整体进行。在出现问题的时候,只要检查该程序本身的运行时刻快照、日志,进行错误检查即可,查错相对容易。 (6)易于水平伸缩 由于单体应用全部功能都在一个安装包内,因此,水平扩展就是在另外的服务器上进行新的部署,然后进行一定的配置就可以了,然后通过负载均衡器做多个节点之间进行负载均衡。 2.2 缺点 随着企业规模及业务的不断变化,各种对应用系统的需求也不断增加,单体架构面临的挑战越来越多。例如,系统功能不断增多、代码库变得巨大;用户量攀升,负载变重,性能变慢。单体架构的可维护性、灵活性不断降低,各种成本不断增加。 (1)培训成本升高 随着应用系统的复杂和庞大,新成员需要进行更长时间的培训,才可以成为一名合格的开发团队成员,培训成本随着系统规模不断上升。 (2)技术选型影响大 由于单体架构应用系统是作为一个整体开发和运行,因此全部功能都采用同一个技术路线。因此,如果在后期要修改技术路线,需要花费的代价巨大,甚至整个系统要推倒重来。这样,前期的技术选型要非常慎重。 (3)后续开发难度大 随着应用代码库的巨大化,新增功能开发要非常小心,不能影响已有功能,测试范围也要不断增大,以保证整个系统的质量。有时原有代码在架构上的限制,会导致新增代码很困难,不得不屈从于原有结构,采用打补丁方式进行,使得代码合理性变得越来越差。 (4)持续交付周期长 随着应用系统的功能越来越多,代码越来越复杂,设计、开发、测试周期都会相应增加,以确保原有功能不受影响,这就大大延长了交付的时间。 (5)维护成本增加 由于单体应用系统全部代码在一个整体中,代码耦合度高。这导致分析缺陷、定位缺陷、修复缺陷的成本相应增高。同时,在开发人员对全局功能缺乏深度理解时,修复一个缺陷,容易引入其他缺陷,增加维护成本。 (6)稳定性不高 单体应用全部功能都在一个进程中运行,出现任何一个致命问题,整个进程都会受影响停止服务,导致稳定性不高。 (7)可伸缩性差 应用系统不同功能对服务器硬件需求是不同的,有的功能可能要求CPU速度快,而有的功能要求内存大。而由于不同功能的使用率不同,对整个系
原创力文档


文档评论(0)