Software Architecture in Golang: Orchestrator Pattern



Software Architecture in Golang: Orchestrator Pattern

Software Architecture in Golang: Orchestrator Pattern

What is the Orchestrator Pattern? Adam Bellemare defines it in his book “Building Event Driven Microservices” as a “pattern where a central Microservice, issues commands to and awaits responses from subordinate worker Microservices”.

■ Pros of using the Orchestrator Pattern:
■■ It’s relatively easy to implement and maintain because all coordination is in one place.
■■ Workflow is easier to define because of the nature of the centralized orchestration.

■ Cons of using the Orchestrator Pattern:
■■ There’s coupling between the orchestrator and services, any upstream changes require changes in the orchestrator.
■■ Single point of failure, because the orchestrator is in charge of the workflow, if it fails everything fails even the if the other services are working correctly.

== Relevant links

■ Building Event-Driven Microservices (affiliate link): https://amzn.to/3zuMWer
■ Example code: https://github.com/MarioCarrion/videos/tree/a58147a8d623719879191925482400aee958f87a/2022/06/10
■ Software Architecture in Go/Golang: https://www.youtube.com/playlist?list=PL7yAAGMOat_GCd12Lrv_evJ3Zhv1dl8B-
■ Learning Golang: Concurrency Patterns using errgroup package: https://youtu.be/KGOgEr7tFKE
■ Learning Golang: Context package: Cancellations, Deadlines and Request-scoped values https://youtu.be/mgJMIZsWfB4

== All Go/Golang Playlists

■ Building Microservices in Go/Golang: https://www.youtube.com/playlist?list=PL7yAAGMOat_Fn8sAXIk0WyBfK_sT1pohu
■ Go/Golang Tools and Packages: https://www.youtube.com/playlist?list=PL7yAAGMOat_HEEOvH99agDs_5g51A0Ls3
■ Learning Concurrency Patterns in Go/Golang: https://www.youtube.com/playlist?list=PL7yAAGMOat_Fhj_px_DzNzTsXs-mRwv1t
■ Learning Go/Golang : https://www.youtube.com/playlist?list=PL7yAAGMOat_F7bOImcjx4ZnCtfyNEqzCy
■ Learning Relational Databases in Go/Golang: https://www.youtube.com/playlist?list=PL7yAAGMOat_EgwoQTvNUflrYL_4qzdB7f
■ Software Architecture in Go/Golang: https://www.youtube.com/playlist?list=PL7yAAGMOat_GCd12Lrv_evJ3Zhv1dl8B-
■ Testing in Go/Golang: https://www.youtube.com/playlist?list=PL7yAAGMOat_HSeW4zF0uRL9EaHadE4ZZq

== Socials

■ https://twitter.com/MarioCarrion
■ https://www.instagram.com/mario.carrion
■ https://linkedin.com/in/MarioCarrion

00:00 – Introduction to the Orchestrator Pattern for Microservices
01:19 – Example of implementing the Orchestrator Pattern in Golang
12:58 – Conclusion of the Orchestrator Pattern using Golang

=== Who am I?

Hello👋🏼! I’m Mario, a Hands-on Software Architect and Lead Backend Engineer with decades of professional experience building all kinds of software including on-premise Industrial Automation Systems, Linux Accessibility Desktop and Browser Components as well as Distributed Advertising Microservices.

The content I share includes different topics I’ve learned while working for small startups and large companies including the processes I’ve followed over the years for successfully delivering complex enterprise systems from start to end.

Subscribe if you like Software Development, Software Architecture and Systems Design!

Keep it up. Don’t give up!

#golang #tutorial #microservices

=== Our Vlog Channel

https://www.youtube.com/c/RubyCarrion/videos

=== Our affiliate links below

■ My Amazon Storefront: https://www.amazon.com/shop/rubycarrion
■ Shop my IG posts on my shopLTK page: https://www.shopltk.com/explore/RubyCarrion
■ Vlog camera: Sony RX100 VII https://amzn.to/3qQfvMc
■ Other vlog cameras and gear: https://rubycarrion.com/vlogcamerasandgear/
■ Shop through my links to support the channel: https://rubycarrion.com/shop-my-links/
■ Get a 30 day FREE Trial of Epidemic Sound: https://www.epidemicsound.com/referral/szx441/
■ Join Rakuten for FREE and get $30 when you spend $30: https://www.rakuten.com/r/RUBYRA132?eeid=28187

DISCLAIMER: Some of the links shared in the description are affiliate links. As a member of these affiliate programs, I earn a small commission from your purchases at no additional cost to you. I appreciate your support! 💖

Comments are closed.