Hvad er servicearkitektur?

Servicearkitektur er en softwaredesigntilgang, der løser et problem med en række autonome tjenester.

Analogi

En rimelig analogi til servicearkitektur er en organisation såsom en bank. Banken opdeler arbejde i en række tjenester såsom kundeservice, it-tjenester og forvaltning af menneskelige ressourcer. Hver tjeneste er uafhængig og kan distribueres til forskellige kontorer. Kunderne til hver tjeneste tilbydes en kontrakt, der angiver, hvad der kan forventes af tjenesten. For eksempel kan human resource management hjælpe et team med at rekruttere nyt personale med en form, som teamet udfylder for at indlede processen. Virksomhedens servicestruktur nedbryder det komplekse problem med at drive en bank i små ledelsesstykker af funktionalitet.

Services

Services er enheder af software, der udføre en funktion. De bruges til at opdele komplekse problemer i en række enklere problemer. Tjenester er også designet til at kunne distribueres separat. Dette er en stor fordel, da det giver dig mulighed for at opbygge meget skalerbare og modstandsdygtige systemer.

Resilience

Resilience er et udtryk for software, der er pålidelig under virkelige forhold, der inkluderer forskellige belastninger og fejl. Servicearkitektur er en nyttig teknik til opbygning af systemer, der fortsat fungerer, når tingene fejler. Dette gøres ved at arkitektere tjenester for at være autonome, så de ikke er afhængige af hinanden. Tjenester kan derefter implementeres i skyinfrastruktur og skaleres op og ned efter behov. Når en forekomst mislykkes, er tjenesterne kloge nok til at opdage dette og automatisk find en forekomst, der fungerer.

Services vs Components

Services og komponenter er to forskellige måder at opdele arbejde i håndterbare og genanvendelige klumper. Forskellen er at tjenester kan distribueres alene. Komponenter distribueres med noget andet og er derfor ikke autonome. Tjenester kan konstrueres af komponenter. På samme måde kan komponenter muligvis bruge tjenester.

Service Oriented Architecture (SOA)

Serviceorienteret arkitektur var en tidlig betegnelse for servicearkitektur, der blev vedtaget og markedsført af mange store it-leverandører, der brugte det til at sælge SOA-platforme og middleware. Dette var en stor informationsteknologi-mode omkring 2005, der så mange top-down-implementeringer, der involverede køb af en masse software og derefter redesign af eksisterende systemer til at passe ind i et SOA-paradigme. Meget af denne aktivitet gik glip af SOA-pointen, og projektfejl var almindelige. Forvirring regnede, da it-eksperter enten promoverede eller kritiserede SOA, ofte ved at gøre tingene så komplekse som muligt.

Microservices

Al den store tænkning og vrøvl der omgav SOA på toppen af dets popularitet, forhindrede ikke dygtige arkitekter i at bruge sine kerneideer på effektive og lette måder, der producerede pålidelige, skalerbare, håndterbare og omkostningseffektive systemer og applikationer. Dette udviklede sig til en ny kultur af software design kendt som mikroservices, der er organiseret omkring et sæt principper for service design.

Eksempel

Et teleselskab designer et faktureringssystem som en række separat implementerbare tjenester. Hver tjeneste betragtes som et separat produkt, der kan udvikles, vedligeholdes og styres af forskellige mennesker. Tjenesterne indsættes i skyen og løst kobles. Når en tjenesteinstans mislykkes, skifter de andre tjenester automatisk til en forekomst, der stadig fungerer. Selvom problemet med telekomfakturering er ekstremt komplekst, er ingen enkelt tjeneste i arkitekturen kompleks, således at hver er relativt billig at udvikle og administrere. Tjenesterne er i det væsentlige selvorganiserende. Hver udgiver en API til de andre tjenester. Hver ved hvad det har brug for fra de andre tjenester og er smart nok til at rute rundt i mislykkede tilfælde for at finde tjenester, der reagerer. Med andre ord har arkitekturen ingen central controller eller middleware.

Oversigt: Servicearkitektur
Type
Definition En tilgang til softwaredesign, der løser et problem med en række autonome tjenester.
Relaterede begreber

Write a Comment

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *