首页 | 官方网站   微博 | 高级检索  
相似文献
 共查询到18条相似文献,搜索用时 140 毫秒
1.
从单体系统迁移到微服务系统是当前业界对遗留系统实施再工程化的主流选项之一,基于单体遗留系统的微服务体系架构重构则是实现该迁移的关键步骤.目前学界多集中在微服务识别方法的研究上;业界虽有许多面向微服务架构的遗留系统重构的实践,但缺乏系统性的方法及高效鲁棒的工具.鉴于此,在微服务识别与模型驱动开发方法前期研究的基础上,研发一种模型驱动的、可用于单体遗留系统微服务化重构的集成设计平台MSA-Lab.它通过分析单体遗留系统运行日志中的方法调用序列,对其中的类和数据表进行类型识别和聚类以构造抽象微服务,同时生成包括微服务图和微服务序列图在内的系统架构设计模型.它包括用于微服务自动识别与设计模型自动生成的核心部件MSA-Generator,以及用于微服务静态结构模型与动态行为模型可视化展现、交互式建模、模型语法约束检验的核心部件MSA-Modeller.在MSA-Lab平台上,通过对4个开源项目实施有效性、鲁棒性、功能转换完备性等实验以及对3个同类型工具实施性能对比实验,结果表明:所提平台拥有很好的有效性、鲁棒性及实现面向日志的功能转换完备性,且性能更加优越.  相似文献   

2.
李杉杉  荣国平  高邱雅  邵栋 《软件学报》2021,32(5):1284-1301
近年来,微服务架构已经成为软件工程领域比较流行的架构风格,其天然支持DevOps和持续交付、以及可伸缩性、可扩展性好等特性驱动着业界实践者纷纷向微服务架构迁移.然而,采用微服务架构也面临诸多挑战,其中最关键的是缺乏自动化、一体化的解决方案来高效支持面向微服务的拆分设计以及候选微服务架构的评估.为了应对该挑战,本文对已有的数据流驱动的服务拆分方法的局限问题(例如,效率和灵活性)进行改进,在此基础上提出了一种优化的服务拆分方法(DFD-A).该方法通过动静态分析相结合的方式实现了更加高效的数据流信息自动化收集,同时采用了两阶段的聚类算法来取代完全基于自定义规则的服务拆分算法.本文同时实现了原型工具来支持从数据收集分析、服务拆分到候选微服务架构评估的完整且自动化的过程.案例研究结果表明本文所提出优化方法DFD-A及其原型工具在保证拆分结果有效性的基础上,可以更加高效且灵活地支持面向微服务的自动化拆分与评估.  相似文献   

3.
对单体系统进行微服务划分能有效缓解单体架构中系统冗余、难以维护等问题,但是现有的微服务划分方法未能充分利用微服务架构的属性信息,导致服务划分结果的合理性不高.文中给出了一种基于微服务架构的服务划分方法.该方法通过系统服务与属性的关联信息来构建实体-属性关系图,然后结合微服务架构的特征信息与目标系统的需求信息制定服务划分规则,量化两类顶点之间的关联信息,生成实体-属性加权图,最后应用加权的GN算法自动地实现系统的微服务划分.实验结果表明,该方法在服务划分的时效性上有较大提升,并且生成的微服务划分方案在评估指标上的表现更好.  相似文献   

4.
微服务是一种架构模式,属于分布式架构系统,相对于传统单体应用架构,微服务架构具有跨语言、易部署、高可用、可伸缩等优点。但微服务在有许多优点的同时也有很多需要突破改造的难点,本文在对微服务架构说明的基础上,给出了微服务的设计及架构方案,并着重结合工作中项目的实际情况,给出了与传统单体应用升级的整合方案。微服务的框架较多,本文在框架的实现过程中,采用开源分布式服务框架 Spring Cloud。最后基于该框架搭建了"智能报表平台微服务系统"。目前,该平台响应迅速,运行稳定,部署拓展方便快捷。  相似文献   

5.
随着航天技术的不断进步,尤其是近年来商业航天的快速发展,高密度航天发射成为常态,测控系统作为航天发射场的重要业务系统之一,该系统运行的能力与效率将极大影响航天发射任务执行的结果,因此有必要实施对测控任务过程的决策与评定研究。考虑到未来测控任务快速评定呈现少人化、通用化、自动化与智能化的发展趋势,提出了一种基于领域驱动设计的测控任务评定系统设计思想。通过深入分析测控任务评定业务,结合领域驱动设计和微服务架构特点,经过领域模型设计、微服务识别、微服务实现等步骤进行全系统设计。最后,结合典型航天发射测控任务场景,验证了本方案的可行性,为进一步提升我国测控任务评定效率提供了参考和思路。  相似文献   

6.
张贺  王忠杰  陈连平  彭鑫 《软件学报》2021,32(5):1229-1230
随着软件互联网化和服务化的高度发展,持续性(continuity)成为现代软件系统的基本特性之一,覆盖从商业策划、软件开发、运维、演化的所有环节,使得软件系统在持续稳定提供功能和服务的同时,软件系统的边界和内部结构始终处于不断变化、持续更新和适应之中,持续软件工程(continuous software engineering)由此被提出并迅速得到广泛的实践应用.微服务(microservice)架构作为一种全新的去中心化分布式架构,在软件架构层面成为适应持续软件工程发展的必然趋势,而领域驱动设计(domain-driven design,简称DDD)伴随着微服务架构的兴起也重新获得了业界的广泛关注,二者共同关注服务自顶向下的合理设计和分解.微服务架构与领域驱动设计共同支持实现现代软件系统的持续性特征.为了反映中国学者和实践者在求解以微服务架构为代表的持续软件工程所面临的架构难题和挑战过程中取得的理论、技术或实验方面的创新性、突破性的高水平研究成果,特设立此专题. 本专题采取公开征稿的方式,共收到19篇投稿并通过了形式审查.特约编辑邀请了20余位领域专家参与审稿,每篇稿件至少邀请2位评审专家并经过两轮审稿.共计10篇稿件通过第1轮评审,并在CCF中国软件大会上进行了报告.经过第2轮终审,最终有6篇论文入选本专题.其中, 论文“基于混沌工程的微服务韧性风险识别和分析”研究微服务架构系统的韧性风险识别问题,通过向系统引入随机环境扰动并观察服务性能的变化来寻找潜在韧性风险,向运维人员提供参考. 论文“面向微服务架构的开发组织适应性评估框架”通过系统化文献综述得出了使用微服务架构对组织产生的7个方面的影响,进一步提出了一个用于评估并提高开发组织对于微服务架构的适应性的评估框架. 论文“一种优化的数据流驱动的微服务化拆分方法”提出了一种自动化的微服务拆分与评估方法DFD-A,支持从数据收集分析、服务拆分到候选微服务架构评估的自动化设计过程,并实现了原型工具. 论文“一种监控系统的链路跟踪型日志数据的存储设计”基于开源的应用性能监控系统CAT,提出了一种针对tracing类型日志数据的存储设计方案,提升了存储效率和查询效率,并在美团点评线上系统中得到真实 应用. 论文“基于多源特征空间的微服务可维护性评估”提出了一种多源特征空间模型以统一表示软件维护过程中产生的多源数据.基于该模型提出了微服务代码可维护性度量,并实现了原型工具MicroEvaluator. 论文“多版本共存的微服务系统自适应演化方法”针对微服务系统中的多版本共存现象和用户/运维需求的变化,提出了最优化微服务系统演化方案的设计方法,实现了相应的编程框架以支持微服务系统自适应演化. 本专题面向持续软件工程和微服务架构的研究人员和工程实践人员,内容涵盖系统软件、软件工程等领域,反映了我国学者在以微服务架构为代表的持续软件工程方法、技术以及支持工具等方面的高水平研究成果.感谢《软件学报》编委会、中国计算机学会软件工程专委会与系统软件专委会对专题工作的指导和帮助,感谢专题全体评审专家及时、耐心、细致的评审工作,感谢踊跃投稿的所有作者.希望本专题能够对国内持续软件工程和微服务领域的科研工作有所促进.  相似文献   

7.
云计算为我们提供了一种全新、高效的方式来部署可扩展的Web应用,这种方式使企业的应用可以按需对计算资源进行分配.微服务架构用于将庞大复杂的应用系统拆分为一系列可独立开发、测试、部署、运行、升级的服务模块.微服务架构为大批互联网企业实现云环境中的应用扩展、降低应用开发复杂度、实现敏捷开发提供了更加有效地方法.本文分析并测试了微服务架构模式,通过一个具体案例——在云环境中开发和部署的企业级应用系统,对两种架构模式实现(单体架构模式和微服务架构模式)进行性能测试,得出评估结果,这些结果对解决企业级应用微服务化中可能遇到的问题具有一定指导意义.  相似文献   

8.
基于面向服务架构的遗留系统再设计方法   总被引:1,自引:0,他引:1  
提出了一种遗留系统再设计的方法,应用改进的层次聚类算法构建遗留代码,能够方便地将代码取出以构建Web服务.该方法支持服务鉴别和服务包装,通过改造有用的遗留代码,经济有效地将遗留系统迁移到面向服务架构中.最后利用上述技术,成功地再现了一个分布式并行计算平台的再设计过程.  相似文献   

9.
模拟人类视觉中有意识主动寻找与无意识被动受吸引相交互的视觉过程,提出了一种基于双向融合机制的建筑目标检测方法.该方法综合了基于自底向上数据驱动的视觉显著性模式和自顶向下基于环境感知的目标搜索模式检测图像中的建筑目标区域.利用拍摄的自然图像进行实验表明:该方法能较好地检测出图像中的建筑目标,具有处理速度快、准确性高的特点,能够满足处理复杂场景图像的实时性要求.  相似文献   

10.
针对传统单体式架构在线教育平台存在灵活性较低、可拓展性和稳定性不足等问题,设计了一种基于微服务架构的在线教育平台。首先,该在线教育平台采用Spring Cloud框架来搭建微服务;然后,利用Nacos组件和其他微服务组件搭建项目基础环境;同时还选取MyBatis-Plus框架作为持久层的框架;最后利用Vue.js框架搭建前台系统。该系统实现了线上课程的有效管理,满足了用户的个性化学习需求。相比与传统单体式架构系统,该系统将不同服务模块部署在不同服务器上,使用灵活、拓展方便、稳定性好,具有一定的实用价值。  相似文献   

11.
相对于传统单块架构,微服务框架具有技术选型灵活、独立按需扩展、可用性高等优点,更适合当前互联网时代需求. 但微服务架构的应用也会引入新的问题,如跨进程通讯、服务注册发现、分布式Session管理等. 本文在对传统框架和微服务框架进行分析比较的基础上,给出了微服务框架的一种实现方案. 该方案设计了微服务框架的功能架构,对微服务框架引入的关键问题给出了解决方案. 采用该实现方案进行业务系统开发,开发人员只需要关注微服务内部业务功能的开发,微服务之间的注册、发现、监控和Session管理由微服务框架完成,简化了系统开发的难度,提高开发效率.  相似文献   

12.
One desired aspect of microservice architecture is the ability to self-adapt its own architecture and behavior in response to changes in the operational environment. To achieve the desired high levels of self-adaptability, this research implements distributed microservice architecture model running a swarm cluster, as informed by the Monitor, Analyze, Plan, and Execute over a shared Knowledge (MAPE-K) model. The proposed architecture employs multiadaptation agents supported by a centralized controller, which can observe the environment and execute a suitable adaptation action. The adaptation planning is managed by a deep recurrent Q-learning network (DRQN). It is argued that such integration between DRQN and Markov decision process (MDP) agents in a MAPE-K model offers distributed microservice architecture with self-adaptability and high levels of availability and scalability. Integrating DRQN into the adaptation process improves the effectiveness of the adaptation and reduces any adaptation risks, including resource overprovisioning and thrashing. The performance of DRQN is evaluated against deep Q-learning and policy gradient algorithms, including (1) a deep Q-learning network (DQN), (2) a dueling DQN (DDQN), (3) a policy gradient neural network, and (4) deep deterministic policy gradient. The DRQN implementation in this paper manages to outperform the aforementioned algorithms in terms of total reward, less adaptation time, lower error rates, plus faster convergence and training time. We strongly believe that DRQN is more suitable for driving the adaptation in distributed services-oriented architecture and offers better performance than other dynamic decision-making algorithms.  相似文献   

13.
Large Internet companies like Amazon, Netflix, and LinkedIn are using the microservice architecture pattern to deploy large applications in the cloud as a set of small services that can be independently developed, tested, deployed, scaled, operated, and upgraded. However, aside from gaining agility, independent development, and scalability, how microservices affect the infrastructure costs is a major evaluation topic for companies adopting this pattern. This paper presents a cost comparison of a web application developed and deployed using the same scalable scenarios with three different approaches: 1) a monolithic architecture, 2) a microservice architecture operated by the cloud customer, and 3) a microservice architecture operated by the cloud provider. Test results show that microservices can help reduce infrastructure costs in comparison with standard monolithic architectures. Moreover, the use of services specifically designed to deploy and scale microservices, such as AWS Lambda, reduces infrastructure costs by 70% or more, and unlike microservices operated by cloud customers, these specialized services help to guarantee the same performance and response times as the number of users increases. Lastly, we also describe the challenges we faced while implementing and deploying microservice applications, and include a discussion on how to replicate the results on other cloud providers.  相似文献   

14.
面向问题的动态群体决策支持系统框架研究   总被引:7,自引:0,他引:7  
叶丹  陈禹六 《计算机工程与应用》2003,39(14):210-212,217
在先进制造与管理模式下,企业经营过程管理的决策活动具有广泛的分布性和重要的协同性,个人决策逐步向群体决策发展,现代群体决策支持系统应该是能处理各类问题,具有开放、重构、事务处理能力的智能化群体决策。论文提出一种面向决策问题的动态群体决策支持系统框架,该框架通过决策个体内决策功能对象的重组,决策个体之间基于问题分解的组织合作,实现了群体决策要求的分布性、开放性、智能化特点,具有很强的灵活、开放、重构能力。  相似文献   

15.
微服务是互联网分布式服务设计的新理念,通过服务拆分成细粒度、功能独立的微服务模块,达到功能解耦,服务独立演进的能力。微服务架构在业务需求日益复杂的庞大系统中发挥越来越重要的作用,研究适合微服务特点的负载均衡具有现实的意义和重要性。软件定义网络作为新型互联网架构,将数据平面与控制平面分离,简化了网络管理的复杂性,具有全局网络状态视图,能够灵活地实现网络流量控制,为微服务架构中服务之间的负载均衡提供了一种新的解决方案。文中研究将微服务与SDN网络相结合,利用SDN的全局网络视图和对网络流精细化的控制能力,为微服务调用提供更精细化的负载均衡能力。通过虚IP与IP改写技术将微服务的负载均衡决策上移到SDN控制平面,进而通过控制平面对微服务调用链路进行分析,得到基于调用链路分析的负载均衡算法。在负载过高时还提供了基于VLAN与流表优先级的限流策略,保护微服务的正常运行。最后通过实验验证了该方案的可行性。  相似文献   

16.
基于供应链的企业信息系统集成设计   总被引:1,自引:0,他引:1  
企业信息系统集成的体系结构可以考虑从纵向和横向两个方面进行研究。以纵向的观点,在系统的开发设计过程中,结合系统工程与软件工程引入供应链的三链(决策链、支撑链、主链)并使其贯穿于系统开发设计过程的始终;以横向的观点,建立在供应链上的各企业的信息集成可以通过计算机协同工作、人工智能、数据库等技术实现,供应链上的每一个生产单元均是虚拟企业,它们均可以以计算机可以识别的信息进行描述与表示,企业的集成实际上就是这样一些信息企业内部及供应链上(企业之间)进行动态或静态的数据集成。同时,针对任务的转换与分解、智能体系设计、数据组织与管理体系设计等问题分别进行了相应的讨论。  相似文献   

17.
为提高企业级应用的可伸缩性,基于微服务的软件体系结构将单体应用细化为可相互协作、配合的一组小服务,使得服务间开发自由、独立部署、易于维护,更好地满足企业发展需求。目前,微服务框架作为微服务架构的具体实现方案,已被很多大型企业成功实施并开源。论述面向服务体系结构、Web服务及微服务相关概念并作比较;给出微服务体系结构实践中的关键技术以及核心功能模块;分析对比主流微服务体系结构实施框架及其核心部件的特征和差异;探讨微服务组合面临的挑战及微服务框架中的服务组合方案,并总结全文。  相似文献   

18.
殷康璘  杜庆峰 《软件学报》2021,32(5):1231-1255
微服务架构近年来已成为互联网应用所采用的主流架构模式.然而相比传统的软件架构,微服务架构更加复杂的部署结构使其面临更多能导致系统发生故障的潜在威胁,且微服务架构系统故障的症状也更加多样化.在可靠性等一些传统的软件度量已不能充分体现微服务架构系统故障应对能力的情况下,微服务的开发者们开始使用“韧性”(Resilience)一词描述微服务架构系统的故障应对能力.为了提高微服务架构系统的韧性,开发者们往往需要针对特定的系统环境扰动因素设计应对机制.如何判断一个系统环境扰动因素是否为影响微服务系统韧性的风险因素,以及如何在系统运行发布之前尽可能多地寻找到这些潜在的韧性风险,都是微服务架构系统开发过程中待研究的问题.在作者在先前研究中提出的微服务韧性度量模型的基础上,结合混沌工程,本文提出了针对微服务架构系统的韧性风险识别和分析方法.韧性风险的识别方法通过不断的向微服务架构系统引入随机系统环境扰动并观察系统服务性能的变化,寻找系统潜在的韧性风险,大幅减少了软件风险识别过程中的人力成本.对于识别到的韧性风险,通过收集执行混沌工程过程中的系统性能监控数据,韧性风险分析方法将利用因果搜索算法构建出各项系统性能指标之间的影响链路,并将可能性较高的链路提供给运维人员作为进一步分析的参考.最后,通过在一个微服务架构系统上实施的案例研究展示了本文提出的韧性风险识别和分析方法的有效性.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司    京ICP备09084417号-23

京公网安备 11010802026262号