论文标题
从整体到微服务:用于自动无人机基础架构检查的软件体系结构
From Monolith to Microservices: Software Architecture for Autonomous UAV Infrastructure Inspection
论文作者
论文摘要
线性基础结构任务控制(LIMIC)是在整体软件体系结构中开发的自动无人机(UAV)基础设施检查任务计划的应用程序。该应用程序根据用户的输入,参加任务的无人机数量以及无人机的位置来计算沿基础架构的路由。 limic1.0是最新的应用程序版本,它从整体迁移到微服务,连续集成并使用DevOps工具部署,以促进未来的功能开发,启用更好的流量管理并改善路由计算处理时间。通过将路线计算算法重构为服务,在Kubernetes群集中扩展并启用异步通信,从而改善了处理时间。在本文中,我们讨论了整体和微服务体系结构之间的差异,以证明我们的迁移决定是合理的。我们描述了应用程序的迁移和实施过程的方法,我们用于连续集成和部署的技术,与单片应用相比,我们提出了微服务的改进性能结果。
Linear-infrastructure Mission Control (LiMiC) is an application for autonomous Unmanned Aerial Vehicle (UAV) infrastructure inspection mission planning developed in monolithic software architecture. The application calculates routes along the infrastructure based on the users' inputs, the number of UAVs participating in the mission, and UAVs' locations. LiMiC1.0 is the latest application version migrated from monolith to microservices, continuously integrated, and deployed using DevOps tools to facilitate future features development, enable better traffic management, and improve the route calculation processing time. Processing time was improved by refactoring the route calculation algorithm into services, scaling them in the Kubernetes cluster, and enabling asynchronous communication in between. In this paper, we discuss the differences between the monolith and microservice architecture to justify our decision for migration. We describe the methodology for the application's migration and implementation processes, technologies we use for continuous integration and deployment, and we present microservices improved performance results compared with the monolithic application.