LLM2D
MONO2REST:识别和暴露微服务:一种可重用的REST化方法
MONO2REST: Identifying and Exposing Microservices: a Reusable RESTification Approach
作者: Matth\'eo Lecrivain, Hanifa Barry, Dalila Tamzalit, Houari Sahraoui
发布日期: 3/28/2025
arXiv ID: oai:arXiv.org:2503.21522v1

摘要

arXiv:2503.21522v1 类型: cross 摘要:微服务架构已成为大规模云应用的事实标准,提供了可扩展性、可维护性和部署灵活性的众多好处。许多组织正在追求将遗留的大规模系统迁移到微服务架构。然而,这一过程具有挑战性、风险高、耗时长,并且容易失败,而一些组织缺乏必要的财力资源、时间或专业知识来实施这一迁移过程。因此,与其尝试迁移一个可能存在风险或不切实际的遗留系统,我们建议将其作为微服务应用进行暴露,而无需实际迁移。在本文中,我们提出了一种可重用的、自动化的两阶段方法,结合了进化算法和机器学习技术。在第一阶段,我们使用一个多目标遗传算法在方法级别识别微服务,该算法同时考虑方法之间的结构和语义依赖关系。在第二阶段,我们使用分类算法为每个识别出的微服务生成REST API,并分配HTTP方法和端点。我们使用Spring PetClinic应用的案例研究进行了评估,该应用既有大规模系统的实现也有微服务的实现,用作比较的基准。结果表明,我们的方法成功地将识别出的微服务与基准微服务实现中的微服务对齐,突显了其在服务识别和API生成方面的有效性。