当前位置: X-MOL 学术J. Syst. Softw. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Design, monitoring, and testing of microservices systems: The practitioners’ perspective
Journal of Systems and Software ( IF 3.5 ) Pub Date : 2021-08-19 , DOI: 10.1016/j.jss.2021.111061
Muhammad Waseem 1 , Peng Liang 1 , Mojtaba Shahin 2 , Amleto Di Salle 3 , Gastón Márquez 4
Affiliation  

Context:

Microservices Architecture (MSA) has received significant attention in the software industry. However, little empirical evidence exists on design, monitoring, and testing of microservices systems.

Objective:

This research aims to gain a deep understanding of how microservices systems are designed, monitored, and tested in the industry.

Methods:

A mixed-methods study was conducted with 106 survey responses and 6 interviews from microservices practitioners.

Results:

The main findings are: (1) a combination of domain-driven design and business capability is the most used strategy to decompose an application into microservices, (2) over half of the participants used architecture evaluation and architecture implementation when designing microservices systems, (3) API gateway and Backend for frontend patterns are the most used MSA patterns, (4) resource usage and load balancing as monitoring metrics, log management and exception tracking as monitoring practices are widely used, (5) unit and end-to-end testing are the most used testing strategies, and (6) the complexity of microservices systems poses challenges for their design, monitoring, and testing, for which there are no dedicated solutions.

Conclusions:

Our findings reveal that more research is needed to (1) deal with microservices complexity at the design level, (2) handle security in microservices systems, and (3) address the monitoring and testing challenges through dedicated solutions.



中文翻译:

微服务系统的设计、监控和测试:从业者的视角

语境:

微服务架构 (MSA) 在软件行业受到了极大的关注。然而,关于微服务系统的设计、监控和测试的经验证据很少。

客观的:

本研究旨在深入了解业界如何设计、监控和测试微服务系统。

方法:

对 106 份调查回复和来自微服务从业者的 6 次访谈进行了一项混合方法研究。

结果:

主要发现是:(1)领域驱动设计和业务能力的结合是将应用程序分解为微服务最常用的策略,(2)超过一半的参与者在设计微服务系统时使用了架构评估和架构实现,( 3)前端模式的API网关和Backend是最常用的MSA模式,(4)资源使用和负载平衡作为监控指标,日志管理和异常跟踪作为监控实践被广泛使用,(5)单元和端到端测试是最常用的测试策略,(6) 微服务​​系统的复杂性对其设计、监控和测试提出了挑战,没有专门的解决方案。

结论:

我们的研究结果表明,需要更多的研究来 (1) 在设计级别处理微服务的复杂性,(2) 处理微服务系统中的安全性,以及 (3) 通过专用解决方案解决监控和测试挑战。

更新日期:2021-09-03
down
wechat
bug