Microservices Orchestration vs. Choreography: A Decision Framework

被引:4
作者
Megargel, Alan [1 ]
Poskitt, Christopher M. [1 ]
Shankararaman, Venky [1 ]
机构
[1] Singapore Management Univ, Sch Comp & Informat Syst, Singapore, Singapore
来源
2021 IEEE 25TH INTERNATIONAL ENTERPRISE DISTRIBUTED OBJECT COMPUTING CONFERENCE (EDOC 2021) | 2021年
关键词
microservices; orchestration; choreography; event-based; invocation-based; service-oriented architecture;
D O I
10.1109/EDOC52215.2021.00024
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
Microservices-based applications consist of loosely coupled, independently deployable services that encapsulate units of functionality. To implement larger application processes, these microservices must communicate and collaborate. Typically, this follows one of two patterns: (1) choreography, in which communication is done via asynchronous message-passing; or (2) orchestration, in which a controller is used to synchronously manage the process flow. Choosing the right pattern requires the resolution of some trade-offs concerning coupling, chattiness, visibility, and design To address this problem, we propose a decision framework for microservices collaboration patterns that helps solution architects to crystallize their goals, compare the key factors, and then choose a pattern using a weighted scoring mechanism In cases where there is no clear preference, a hybrid pattern is suggested which inherits some strengths of both choreography and orchestration. We demonstrate the framework by evaluating the needs of three industry case studies (Danske Bank, LGB Bank, Netflix), showing that it leads to appropriate patterns being suggested. We are not aware of any existing decision frameworks to guide solution architects in choosing a microservices collaboration pattern.
引用
收藏
页码:134 / 141
页数:8
相关论文
共 50 条
  • [1] A Semantical Framework for the Orchestration and Choreography of Web Services
    Pahl, Claus
    Zhu, Yaoling
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2006, 151 (02) : 3 - 18
  • [2] Telecom Microservices Orchestration
    Luong, Duc-Hung
    Thieu, Huu-Trung
    Outtagarts, Abdelkader
    Mongazon-Cazavet, Bruno
    2017 IEEE CONFERENCE ON NETWORK SOFTWARIZATION (IEEE NETSOFT), 2017,
  • [3] COLLABORATION VS. CHOREOGRAPHY CONFORMANCE IN BPMN
    Corradini, Flavio
    Morichetta, Andrea
    Polini, Andrea
    Re, Barbara
    Tiezzi, Francesco
    LOGICAL METHODS IN COMPUTER SCIENCE, 2020, 16 (04) : 7:1 - 7:37
  • [4] Insights into Web Service Orchestration and Choreography
    Daniel, Florian
    Pernici, Barbara
    INTERNATIONAL JOURNAL OF E-BUSINESS RESEARCH, 2006, 2 (01) : 58 - 77
  • [5] Microservices Security: Bad vs. Good Practices
    Ponce, Francisco
    Soldani, Jacopo
    Astudillo, Hernan
    Brogi, Antonio
    SOFTWARE ARCHITECTURE. ECSA 2022 TRACKS AND WORKSHOPS, 2023, 13928 : 337 - 352
  • [6] Services organisation in IoT : mixing Orchestration and Choreography
    Cherrier, Sylvain
    Langar, Rami
    2018 GLOBAL INFORMATION INFRASTRUCTURE AND NETWORKING SYMPOSIUM (GIIS), 2018,
  • [7] The relation between Web Services orchestration and choreography
    Wu Huaiguang
    Zhong Farong
    ICCSE'2006: Proceedings of the First International Conference on Computer Science & Education: ADVANCED COMPUTER TECHNOLOGY, NEW EDUCATION, 2006, : 716 - 718
  • [8] Containerized Microservices Orchestration and Provisioning in Cloud Computing: A Conceptual Framework and Future Perspectives
    Saboor, Abdul
    Hassan, Mohd Fadzil
    Akbar, Rehan
    Shah, Syed Nasir Mehmood
    Hassan, Farrukh
    Magsi, Saeed Ahmed
    Siddiqui, Muhammad Aadil
    APPLIED SCIENCES-BASEL, 2022, 12 (12):
  • [9] Deployment Orchestration of Microservices with Geographical Constraints for Edge Computing
    Villari, Massimo
    Celesti, Antonio
    Tricomi, Giuseppe
    Galletta, Antonino
    Fazio, Maria
    2017 IEEE SYMPOSIUM ON COMPUTERS AND COMMUNICATIONS (ISCC), 2017, : 633 - 638
  • [10] Language Processing Modelling Notation - Orchestration of NLP Microservices
    Walkowiak, Tomasz
    ADVANCES IN DEPENDABILITY ENGINEERING OF COMPLEX SYSTEMS, 2018, 582 : 464 - 473