SOA vs Web Services
Tīmekļa pakalpojumus izmanto, lai izveidotu lietojumprogrammas, kuras var nosūtīt / saņemt ziņojumus, izmantojot SOAP, izmantojot HTTP. Web pakalpojums ir publicēts funkcionalitātes komplekts, kas tiek piedāvāts tīmeklī. SOA ir arhitektūras koncepciju kopums, ko izmanto pakalpojumu izstrādei un integrēšanai. Web pakalpojumus var izmantot SOA ieviešanai. Bet tā ir tikai viena SOA balstītu lietojumprogrammu realizācijas metode.
Kas ir tīmekļa pakalpojumi?
Web pakalpojums ir saziņas metode tīklā. Saskaņā ar W3C, tīmekļa pakalpojums ir sistēma, kas paredzēta transakciju no vienas mašīnas uz otru atbalstam tīklā. Tā ir Web API, kas aprakstīta WSDL (tīmekļa pakalpojumu apraksta valoda), un Web pakalpojumi parasti ir pašpietiekami un sevi raksturo. Web pakalpojumus var atklāt, izmantojot UDDI (Universal Description, Discovery and Integration) protokolu. Apmainoties ar SOAP (vienkārša objekta piekļuves protokola) ziņojumiem, parasti izmantojot HTTP (ar XML), citas sistēmas var mijiedarboties ar Web pakalpojumiem.
Web pakalpojumus izmanto vairākos veidos, piemēram, RPC (Remote Procedure Call), SOA (Service Oriented Architecture) un REST (reprezentācijas stāvokļa nodošana). Ir divas automatizētas projektēšanas metodoloģijas tīmekļa pakalpojumu izstrādei. Augšupējā pieeja nodarbojas ar vispirms klašu izveidi un pēc tam WSDL paaudzes rīku izmantošanu, lai šīs klases izveidotu kā Web pakalpojumus. Augšupvērstā pieeja nodarbojas ar WSDL specifikāciju noteikšanu un pēc tam kodu ģenerēšanas rīku izmantošanu atbilstošo klašu ģenerēšanai. Web pakalpojumiem ir divas galvenās izmantošanas iespējas. Tos var izmantot kā atkārtoti lietojamas lietojumprogrammu sastāvdaļas un / vai, lai savienotu tīmekļa lietojumprogrammas, kas darbojas dažādās platformās.
Kas ir SOA??
SOA (uz pakalpojumiem orientēta arhitektūra) ir arhitektūras koncepciju kopums, ko izmanto pakalpojumu izstrādei un integrēšanai. SOA nodarbojas ar izkliedēto skaitļošanu, kurā patērētāji patērē sadarbspējīgu pakalpojumu kopumu. Vairāki patērētāji var patērēt vienu pakalpojumu un otrādi. Tāpēc SOA bieži izmanto, lai integrētu vairākas lietojumprogrammas, kas izmanto dažādas platformas. Lai SOA darbotos pareizi, pakalpojumiem jābūt brīvi savienotiem ar operētājsistēmām un to pamatā esošo lietojumu tehnoloģijām. SOA izstrādātāji izveido pakalpojumus, izmantojot funkcionalitātes vienības, un padara tos pieejamus internetā. Web pakalpojumus var izmantot, lai ieviestu SOA arhitektūru. Tādā gadījumā tīmekļa pakalpojumi kļūst par SOA funkcionalitātes vienībām, kuras ir pieejamas internetā. Web pakalpojumus ikviens var izmantot, neuztraucoties par platformām vai programmēšanas valodām, kuras tiek izmantotas to izstrādei. SOA ir tieši balstīta uz orientāciju uz pakalpojumu, kas runā par pakalpojumiem ar vienkāršu saskarni, kam lietotāji var piekļūt neatkarīgi, neuztraucoties par pakalpojuma faktisko ieviešanu platformā.
Kāda ir atšķirība starp SOA un Web Services?
Starp Web pakalpojumiem un SOA ir dažas galvenās atšķirības. Web pakalpojumi definē tīmekļa tehnoloģiju, kuru var izmantot, lai izveidotu lietojumprogrammas, kuras var sūtīt / saņemt ziņojumus, izmantojot SOPA, izmantojot HTTP. Tomēr SOA ir arhitektūras modelis brīvi savienotu, uz pakalpojumu balstītu lietojumprogrammu ieviešanai. Web pakalpojumus var izmantot, lai ieviestu SOA lietojumprogrammas. Kaut arī tīmekļa pakalpojumu pieeja SOA ir kļuvusi ļoti populāra, tā ir tikai viena SOA ieviešanas metode. SOA var ieviest, izmantojot jebkuru citu uz pakalpojumiem balstītu tehnoloģiju (piemēram, CORBA un REST).