Delen via


Servicegerichte architectuur

Tip

Deze inhoud is een fragment uit het eBook, .NET Microservices Architecture for Containerized .NET Applications, beschikbaar op .NET Docs of als een gratis downloadbare PDF die offline kan worden gelezen.

.NET Microservices Architecture for Containerized .NET Applications eBook cover thumbnail.

Servicegeoriënteerde architectuur (SOA) was een term die te veel wordt gebruikt en heeft verschillende dingen voor verschillende personen betekenen. Maar als gemeenschappelijke noemer betekent SOA dat u uw toepassing structureert door deze op te vouwen in meerdere services (meestal als HTTP-services) die kunnen worden geclassificeerd als verschillende typen, zoals subsystemen of lagen.

Deze services kunnen nu worden geïmplementeerd als Docker-containers, waarmee implementatieproblemen worden opgelost, omdat alle afhankelijkheden zijn opgenomen in de containerinstallatiekopie. Wanneer u ECHTER SOA-toepassingen moet opschalen, hebt u mogelijk problemen met schaalbaarheid en beschikbaarheid als u implementeert op basis van één Docker-hosts. Dit is waar Docker-clusteringsoftware of een orchestrator u kan helpen, zoals wordt uitgelegd in latere secties waar implementatiemethoden voor microservices worden beschreven.

Docker-containers zijn nuttig (maar niet vereist) voor zowel traditionele servicegerichte architecturen als de geavanceerdere microservicesarchitecturen.

Microservices zijn afgeleid van SOA, maar SOA verschilt van microservicesarchitectuur. Functies zoals grote centrale brokers, centrale orchestrators op organisatieniveau en de Enterprise Service Bus (ESB) zijn typisch in SOA. Maar in de meeste gevallen zijn dit antipatronen in de microservicecommunity. Sommigen beweren zelfs dat de microservicearchitectuur SOA juist is.

Deze handleiding richt zich op microservices, omdat een SOA-benadering minder prescriptief is dan de vereisten en technieken die worden gebruikt in een microservicearchitectuur. Als u weet hoe u een op microservice gebaseerde toepassing bouwt, weet u ook hoe u een eenvoudigere servicegeoriënteerde toepassing bouwt.