Skip to main content
QUICK REVIEW

[论文解读] Microservices in Practice: A Survey Study

Markos Viggiato, Ricardo Terra|arXiv (Cornell University)|Aug 14, 2018
Software System Performance and Reliability参考文献 12被引用 6
一句话总结

本文通过对122名微服务开发人员的调查,研究了微服务架构在现实世界中的采用情况、实践方法及面临的挑战。研究结果表明,开发人员在很大程度上遵循最佳实践,主要优势包括独立部署和可扩展性;主要挑战则包括分布式事务、端到端系统测试以及服务故障——尽管远程调用性能问题的严重性远低于文献所暗示的程度。

ABSTRACT

Microservices architectures have become largely popular in the last years. However, we still lack empirical evidence about the use of microservices and the practices followed by practitioners. Thereupon, in this paper, we report the results of a survey with 122 professionals who work with microservices. We report how the industry is using this architectural style and whether the perception of practitioners regarding the advantages and challenges of microservices is according to the literature.

研究动机与目标

  • 了解微服务在工业界的实际使用情况,超越理论或学术视角。
  • 验证从业者对微服务优势和挑战的认知是否与现有文献一致。
  • 识别学术建议与现实世界开发人员经验之间的差异。
  • 为从业者和研究人员提供关于微服务采用模式和挑战的实证证据。

提出的方法

  • 开展系统性映射研究,从学术文献和从业者博客中识别微服务的关键优势与挑战。
  • 设计一项调查,针对122名从事微服务工作的专业人士,评估其实践、认知与经验。
  • 使用李克特量表问题,以1–5分衡量各项挑战与优势的重要性,其中1分为'非常重要'。
  • 在调查发布后,收集了9名开发人员的反馈,以验证研究发现并获取定性见解。
  • 使用描述性统计方法分析调查结果,识别文献与从业者经验之间的趋势与差异。
  • 采用混合方法研究,结合定性映射与定量调查数据,以确保全面洞察。

实验结果

研究问题

  • RQ1与学术文献相比,从业者如何感知微服务在现实系统中的优势?
  • RQ2从业者在多大程度上面临先前研究中识别出的微服务挑战?
  • RQ3是否存在文献预测的挑战(如昂贵的远程调用)与实际从业者经验之间的差异?
  • RQ4开发人员的角色与团队结构在多大程度上符合推荐的微服务实践?

主要发现

  • 64%的受访开发人员自认为是后端开发人员,表明其关注重点在于实现而非DevOps角色。
  • 报告的最关键挑战是复杂的分布式事务(32.8%的受访者评为'非常重要'),其次是系统级测试(57%)和服务故障(49%)。
  • 仅有13.8%的开发人员认为昂贵的远程调用是一个非常重要的挑战,这与文献中将其视为主要问题的观点相矛盾。
  • 从业者在很大程度上遵循最佳实践,对独立部署、可扩展性、可维护性以及技术多样性等优势高度认同。
  • 所有九名后续访谈者均提供了积极反馈,证实了本文在捕捉现实世界微服务实践方面的相关性与准确性。
  • 在远程调用成本的重要性认知上存在差异,表明实际中性能优化可能不像理论上认为的那样令人担忧。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。