Netflix ב-2009 עמדה בפני בעיה: ארכיטקטורת ה-Monolith הייתה קשה לתחזוקה. כל feature דורש שינוי בקוד חדש, retesting של הכל, ובדיקת ה-entire integration. הם התחילו לחשוב - כיצד ניתן לפצל את המערכת לחלקים עצמאיים שיכולים לתקשר אחד עם השני? במקום ל-God Object שעושה הכל, services אחראיים להתקשרות בין שירותים.
ב-Microservices architecture ישנן שתי טופולוגיות עיקריות שמנהלות את התקשורת בין שירותים: Mediator topology (אורכסטרציה) ו-Broker topology (choreography). בחירה בין השתיים היא החלטה ארכיטקטורית שמשפיעה על complexity, fault tolerance, ועל קוד שתכתוב למשך שנים.