Microservices Orchestration vs. Choreography: A decision framework

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 w...

Full description

Saved in:
Bibliographic Details
Main Authors: MEGARGEL, Alan @ Ali MADJELISI, POSKITT, Christopher M., SHANKARARAMAN, Venky
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2021
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/6577
https://ink.library.smu.edu.sg/context/sis_research/article/7580/viewcontent/microservices_df_edoc21.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-7580
record_format dspace
spelling sg-smu-ink.sis_research-75802022-01-13T08:10:18Z Microservices Orchestration vs. Choreography: A decision framework MEGARGEL, Alan @ Ali MADJELISI POSKITT, Christopher M. SHANKARARAMAN, Venky, 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. 2021-12-01T08:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/6577 info:doi/10.1109/EDOC52215.2021.00024 https://ink.library.smu.edu.sg/context/sis_research/article/7580/viewcontent/microservices_df_edoc21.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University microservices orchestration choreography event-based invocation-based service-oriented architecture Databases and Information Systems Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic microservices
orchestration
choreography
event-based
invocation-based
service-oriented architecture
Databases and Information Systems
Software Engineering
spellingShingle microservices
orchestration
choreography
event-based
invocation-based
service-oriented architecture
Databases and Information Systems
Software Engineering
MEGARGEL, Alan @ Ali MADJELISI
POSKITT, Christopher M.
SHANKARARAMAN, Venky,
Microservices Orchestration vs. Choreography: A decision framework
description 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.
format text
author MEGARGEL, Alan @ Ali MADJELISI
POSKITT, Christopher M.
SHANKARARAMAN, Venky,
author_facet MEGARGEL, Alan @ Ali MADJELISI
POSKITT, Christopher M.
SHANKARARAMAN, Venky,
author_sort MEGARGEL, Alan @ Ali MADJELISI
title Microservices Orchestration vs. Choreography: A decision framework
title_short Microservices Orchestration vs. Choreography: A decision framework
title_full Microservices Orchestration vs. Choreography: A decision framework
title_fullStr Microservices Orchestration vs. Choreography: A decision framework
title_full_unstemmed Microservices Orchestration vs. Choreography: A decision framework
title_sort microservices orchestration vs. choreography: a decision framework
publisher Institutional Knowledge at Singapore Management University
publishDate 2021
url https://ink.library.smu.edu.sg/sis_research/6577
https://ink.library.smu.edu.sg/context/sis_research/article/7580/viewcontent/microservices_df_edoc21.pdf
_version_ 1770575994549174272