SOA ve Factoriu: Srovnání servisově orientované architektury s monolitem
Servisově orientovaná architektura (SOA) rozkládá monolit na nezávislé služby propojené Enterprise Service Bus (ESB). Ve Factoriu to modelujeme centrální sběrnou linkou z obousměrných dopravních pásů, po kterých se distribuují suroviny mezi specializované výrobní větve. Porovnání s monolitem ukazuje nárůst složitosti na startu, ale potenciál pro škálování.
Sběrná linka se stará o směrování: přijímá požadavky od služeb, přesměrovává suroviny a vrací výsledky. Služby se nekomunikují přímo – jen přes sběrnou linku, což imituje standardizovaný protokol výměny. Elektrárna se integruje jako služba na začátek sběrné linky a spotřebovává palivo z ní. Kapaliny po potrubích, suroviny po dopravních pásech oběma směry.
Plán realizace a první výzvy
Předběžný návrh: sběrná linka se rozšiřuje doprava a nahoru, výrobní větve dolů. Vertikální škálování zjednodušeno: duplikováním zón bez míchání logiky.
Klíčové aspekty převodu do hry:
- Dopravní pásy jako sokety pro lokální uzel.
- Železniční doprava jen pro příchozí uživatele (sítě).
- Samostatné větve na produkt (zelené obvody, ozubená kola).
- Sběrná linka obousměrná pro zpětné toky (jaderné palivo k elektrárně).
Problémy:
- Údržba sběrné linky vyžaduje spoustu času.
- Prostorové limity kvůli šířce sběrné linky.
- Snadné vertikální rozšiřování při rezervaci prostoru.
Start s mini-monolitem u dolů pro stavební materiály – MVP přístup, nezbytný pro všechny styly.
Pilotní spuštění: Stavba a škálování
Po základní výrobě (dopravní pásy, sestavovače, vkladače) jsme připojili tavírny a elektrárnu. Zóny ozubených kol, lahviček se rozšiřují dolů, sběrná linka doprava. Žluté pásy pokrývají potřeby bez nedostatku, na rozdíl od monolitu.
Problémy v rané fázi:
- Vyčerpání startovních dolů před ŽD – dočasné dopravní cesty jako alfa test s omezenou zátěží.
- Přístup k broukům – priorita na obranu (zdi, věže, černé lahvičky), což pohltí čas na obchodní deadliny.
- Rozrůstání sběrné linky mimo obrazovku – radary pro přehled.
- Nízká vytíženost kanálů: široké toky s úzkými proudy předmětů.
- Jezera na cestě – zasypání landfillem.
Sběrná linka spotřebovává hodně času na pokládání a údržbu, což potvrzuje reálné nevýhody SOA: složitost ESB při růstu. Komunikace mezi službami (větvemi) a sběrnou linkou imituje týmová sladění.
Srovnání s monolitem na mezičasech
SOA se vyplatí v dopravních pásech: výroba žlutých pokrývá sběrnou linku i továrnu. Monolit trpěl nedostatkem. Škálování jednodušší – nové zóny po sběrné lince bez přestavby.
Nicméně start pomalejší: herní dny na pilot bez plného nasazení uživatelů. Brouci a suroviny odvádějí pozornost od produktové logiky, modelujíce rozpočtové tlaky.
Vertikální duplikování větví (škálování služeb) funguje: prostor mezi odbočkami je klíčový.
Co je důležité
- Sběrná linka – úzké hrdlo: logika směrování roste se službami, riskuje poruchy.
- Nezávislý rozvoj služeb usnadňuje aktualizace, ale vyžaduje standardy.
- Ve Factoriu SOA vyhrává v dopravních pásech, prohrává v prostoru a čase na stavbu.
- Mini-monolit na startu – MVP pro jakoukoli architekturu.
- Obousměrné toky nutné pro realismus (palivo zpět).
— Editorial Team
Zatím žádné komentáře.