Što je SOA? - Uporaba i potreba - Prednosti i nedostatci

Sadržaj:

Anonim

Što je SOA?

SOA je stil dizajniranja softvera. U SOA konceptu, usluge se pružaju izvana drugim komponentama kao komponenta aplikacije preko komunikacijskog protokola preko mreže. Osnovno načelo SOA-e ne ovisi o tehnologiji, proizvodima i dobavljačima.

Definicija SOA?

Wikipedia definira SOA kao „uslužno orijentiranu arhitekturu“, što je stil dizajna softvera u kojem se ostalim komponentama usluge pružaju putem komponenata aplikacije, putem komunikacijskog protokola preko mreže. Osnovno načelo arhitekture usmjerene na uslugu neovisna je o dobavljačima, proizvodima i tehnologijama. Usluzi je zasebna jedinica funkcionalnosti kojoj se može pristupiti na daljinu, a njoj se može djelovati i ažurirati samostalno, kao što je internetsko preuzimanje izvoda s kreditne kartice. “Zanimljivo je znati da je SOA u početku bila poznata kao servisna arhitektura.

Četiri smo osnovna svojstva ako prođemo kroz jednu od definicija

  • Samostalna je.
  • Usluga u SOA-i može ovisiti o drugim SOA uslugama.
  • Potrošači nemaju saznanja o onome što se događa u procesu.
  • Obično je umotano tako da predstavlja poslovnu aktivnost.

Razumijevanje SOA-e

Web usluge promiču atmosferu suradnika za sustave koji su lagano povezani i praktični. Mnoge ideje o mrežnim uslugama potiču se iz apstraktnog dizajna koji se naziva uslužno orijentiranim dizajnom (SOA). SOA konfigurira entitete (usluge, registre, ugovore i proxyje) kako bi se maksimiziralo labavo spajanje i recikliranje. Ovaj materijal, opisuje ove entitete suradnike, degradira njihove konfiguracije na apstraktni način. Iako ćete najvjerojatnije koristiti mrežne usluge za implementaciju svog servisno orijentiranog dizajna, ovo poglavlje objašnjava SOA bez puno reference na odabranu tehnologiju implementacije. To je učinjeno kako bi u kasnijim poglavljima vidjeli područja unutar kojih neto usluge isporučuju neke dobre aspekte stvarnog SOA-e i alternativna područja unutar kojih Web usluge nedostaju.

Iako jedinice mrežnih usluga pošteno počinju prema dizajnu usmjerenom na usluge, u ovom poglavlju se može raspravljati o tome što podrazumijeva potpuno prisiljeni SOA. Sad s onim znanjem o SOA-i, pokušajmo znati što možemo učiniti sa SOA-om u našem sljedećem odjeljku.

Što možete učiniti s SOA-om?

Nekoliko je stvari moguće učiniti s SOA-om, obavijestite nas po jednu.

1. Izrada pouzdane usluge

SOA bi se mogla koristiti za pouzdanu uslugu. SOA bi se mogla koristiti za pouzdanu uslugu koja sadrži sljedeće značajke -

  • Poboljšani protok informacija.
  • Sposobnost eksponiranja interne funkcionalnosti.
  • Organizacijska fleksibilnost.

2. Usluga za višekratnu upotrebu

Jedno od glavnih korištenja SOA-e je pružanje usluge ponovne upotrebe. Pojmovi SOA mogu se lako upotrijebiti i implementirati za izradu usluge koja nije ograničena na jednu komponentu, ali može se koristiti u više komponenti.

3. Fleksibilnost konfiguracije

Vrlo je fleksibilan i može se lako konfigurirati prema našim potrebama.

4. Za razvoj novih funkcionalnih kombinacija

SOA se može koristiti za brzo razvijanje novih kombinacija funkcija, prema potrebi ili zahtjevu.

Prednosti i nedostatci

sada da razmotrimo i saznamo o njegovim prednostima i nedostacima.

prednosti

1. Održavanje je jednostavno - Uređivanje i ažuriranje bilo koje usluge implementirane u SOA arhitekturi je jednostavno. Ne trebate ažurirati vaš sustav. Uslugu održava treća strana i bilo kakve izmjene ove usluge neće imati utjecaja na vaš sustav. U većini slučajeva prethodni API radi jer funkcionira i prije.

2. Poboljšana je kvaliteta koda - Kako usluge pokreću samostalno naš sustav, oni imaju svoju različitu šifru, stoga je naš kôd spriječen da bude višak. Također, naš kod postaje besplatan.

3. Neovisnost platforme - Usluge komuniciraju s alternativnim aplikacijama kroz zajednički jezik, što znači da je slobodna platforma na toj aplikaciji pokrenuta. Usluge mogu pružati API na različitim jezicima, npr. PHP, JavaScript itd.

4. Skalabilan - ako bilo koja usluga dobiva nekoliko korisnika onda je to često jednostavno skalabilno dodavanjem dodatnih poslužitelja. Ovo će stvoriti uslugu vani cijelo vrijeme korisnicima.

5. Pouzdan - kvadratna mjera usluge obično je malene veličine u usporedbi s punopravnom aplikacijom. Tako je lakše ispraviti i provjeriti slobodne usluge.

6. Ista struktura direktorija - Usluge imaju ekvivalentnu strukturu direktorija, tako da korisnici mogu pristupiti informacijama o uslugama iz ekvivalentnog direktorija u svakoj prilici. Ako je bilo koja usluga izmijenila svoju lokaciju, dodatni imenik ostaje isti. To je vrlo korisno za potrošače.

7. Neovisno o ostalim uslugama - Usluge generirane primjenom SOA načela neovisne su jedna o drugoj. Tako usluge često koriste više aplikacija u ekvivalentnom vremenu.

Nedostaci

1. Poslužitelj velike propusnosti - Zbog toga neto usluga često šalje i prima poruke i znanja, tako da jednostavno doseže visoke zahtjeve dnevno. Dakle, on uključuje brzi poslužitelj s puno podataka za pokretanje internetske usluge.

2. Dodatno preopterećenje - u SOA-i svi kvadrat ulaza mjeri njegovu valjanost prije nego što je poslan na uslugu. Ako viktimizirate višestruke usluge, to će preopteretiti vaš sustav daljnjim računanjem.

3. Visoki troškovi - skupi su s obzirom na ljudske resurse, razvoj i tehnologiju.

Zašto bismo trebali koristiti SOA?

To ima višestruke prednosti o kojima smo raspravljali u ovom članku. SOA možemo koristiti za izradu pouzdane, bolje, injektibilne i usluge za višekratnu upotrebu

Zašto nam treba SOA?

Može se koristiti za rješavanje različitih poslovnih potreba.

1. Za razvoj neovisnih usluga

SOA je potreban ako je naše poslovanje potrebno razviti više usluga koje su međusobno neovisne. Međutim, ove usluge i dalje mogu međusobno komunicirati.

2. Izložiti podatke

Izlaganje funkcionalnosti softvera kao usluge lakše je implementirati ako koristimo SOA.

3. Razviti uslugu za višekratnu upotrebu

Ako je naš zahtjev razviti uslugu za višekratnu upotrebu, tada je SOA savršena za to. SOA bi se mogla koristiti za neovisnu, pouzdanu i uslugu ponovne upotrebe

Kako će ova tehnologija pomoći u vašem razvoju karijere?

Ovo je jedna od najčešće korištenih tehnologija. Gotovo svaka poslovna logika ima zahtjeve koji zahtijevaju jedan ili drugi način unosa SOA-e. Stoga nije pogrešno reći da će se od SOA-e zahtijevati velika količina različitih poslovnih zahtjeva.

Zaključak

To je višenamjenski koncept za dizajn različitih usluga koje se mogu injektirati. Te usluge mogu djelovati izvana na druge komponente kao komponente aplikacije putem komunikacijskog protokola preko mreže. Osnovno načelo SOA-e ne ovisi o tehnologiji, proizvodima i dobavljačima. Za to je potrebna dobra količina prakse da bi se mogla koristiti u najefikasnijim zahtjevima.

Preporučeni članci

Ovo je vodič za Što je SOA ?. Ovdje smo razgovarali o pojmovima, definiciji, što možemo učiniti, prednostima i nedostacima. Možete i proći naše druge predložene članke da biste saznali više -

  1. Što je web aplikacija?
  2. Što je Apache Cassandra?
  3. Što je J2EE? | Vještine i prednosti
  4. Što je Matlab | Najbolje upotrebe Matlaba
  5. Što je testiranje SOA?