SOA va veb-xizmatlar o'rtasidagi farq

SOA va veb-xizmatlar o'rtasidagi farq
SOA va veb-xizmatlar o'rtasidagi farq

Video: SOA va veb-xizmatlar o'rtasidagi farq

Video: SOA va veb-xizmatlar o'rtasidagi farq
Video: Java Multithreading : AtomicReference, ScheduledExecutorService и монада Either. Многопоточность. 2024, Noyabr
Anonim

SOA va veb-xizmatlar

Veb-xizmatlari HTTP orqali SOAP yordamida xabarlarni yuborish/qabul qilish uchun ilovalar yaratish uchun ishlatiladi. Veb-xizmat - bu Internet orqali taqdim etiladigan ommabop funksiyalar to'plami. SOA - xizmatlarni ishlab chiqish va integratsiya qilish uchun ishlatiladigan arxitektura tushunchalari to'plami. SOA ni amalga oshirish uchun veb-xizmatlardan foydalanish mumkin. Lekin bu SOA asosidagi ilovalarni amalga oshirishning faqat bitta usuli.

Veb-xizmatlar nima?

Veb-xizmat tarmoq orqali aloqa qilish usulidir. W3C ma'lumotlariga ko'ra, veb-xizmat tarmoq orqali mashinadan mashinaga tranzaktsiyalarni qo'llab-quvvatlashga mo'ljallangan tizimdir. Bu WSDL (Web Service Description Language) da tasvirlangan veb-API bo'lib, veb-xizmatlar odatda o'z-o'zidan mavjud va o'zini o'zi tavsiflaydi. Veb-xizmatlarni UDDI (Universal Description, Discovery and Integration) protokoli yordamida topish mumkin. SOAP (Simple Object Access Protocol) xabarlarini odatda HTTP (XML bilan) orqali almashish orqali boshqa tizimlar veb-xizmatlar bilan oʻzaro aloqada boʻlishi mumkin.

Veb-xizmatlari RPC (Masofaviy protsedura qoʻngʻiroqlari), SOA (Xizmatga yoʻn altirilgan arxitektura) va REST (vakillik holatini oʻtkazish) kabi koʻplab usullarda qoʻllaniladi. Veb-xizmatlarni ishlab chiqish uchun ikkita avtomatlashtirilgan dizayn metodologiyasi mavjud. Pastdan yuqoriga yondashuv birinchi navbatda sinflarni yaratish, so'ngra ushbu sinflarni veb-xizmatlar sifatida yaratish uchun WSDL yaratish vositalaridan foydalanish bilan bog'liq. Yuqoridan pastga yondashuv WSDL spetsifikatsiyalarini aniqlash va keyin tegishli sinflarni yaratish uchun kod yaratish vositalaridan foydalanish bilan shug'ullanadi. Veb-xizmatlardan ikkita asosiy foydalanish mavjud. Ular qayta ishlatiladigan dastur komponentlari va/yoki turli platformalarda ishlaydigan veb-ilovalarni ulash uchun ishlatilishi mumkin.

SOA nima?

SOA (Xizmatga yoʻn altirilgan arxitektura) - xizmatlarni ishlab chiqish va integratsiyalash uchun foydalaniladigan meʼmoriy tushunchalar toʻplami. SOA taqsimlangan hisoblash bilan shug'ullanadi, bunda iste'molchilar birgalikda ishlaydigan xizmatlar to'plamini iste'mol qiladilar. Bir nechta iste'molchilar bitta xizmatdan foydalanishlari mumkin va aksincha. Shuning uchun, SOA ko'pincha turli platformalardan foydalanadigan bir nechta ilovalarni birlashtirish uchun ishlatiladi. SOA to'g'ri ishlashi uchun xizmatlar operatsion tizimlar va asosiy ilovalar texnologiyalari bilan erkin bog'langan bo'lishi kerak. SOA ishlab chiquvchilari funksionallik birliklaridan foydalangan holda xizmatlarni yaratadilar va ularni internet orqali taqdim etadilar. SOA arxitekturasini amalga oshirish uchun veb-xizmatlardan foydalanish mumkin. Bunday holda, veb-xizmatlar Internet orqali kirish mumkin bo'lgan SOA funktsional birligiga aylanadi. Veb-xizmatlardan har kim platformalar yoki ularni ishlab chiqishda foydalaniladigan dasturlash tillari haqida qayg'urmasdan foydalanishi mumkin. SOA to'g'ridan-to'g'ri xizmat ko'rsatishga yo'n altirilganlik tamoyiliga asoslanadi, u xizmatning haqiqiy platformasi haqida qayg'urmasdan foydalanuvchilar mustaqil ravishda kirishlari mumkin bo'lgan oddiy interfeysli xizmatlar haqida gapiradi.

SOA va veb-xizmatlar oʻrtasidagi farq nima?

Veb-xizmatlar va SOA oʻrtasida baʼzi asosiy farqlar mavjud. Veb-xizmatlar HTTP orqali SOPA yordamida xabarlarni yuborish/qabul qilish uchun ilovalar yaratish uchun ishlatilishi mumkin bo'lgan veb-texnologiyani belgilaydi. Biroq, SOA erkin bog'langan xizmatga asoslangan ilovalarni amalga oshirish uchun arxitektura modelidir. SOA ilovalarini amalga oshirish uchun veb-xizmatlardan foydalanish mumkin. SOA-ga veb-xizmat yondashuvi juda mashhur bo'lgan bo'lsa ham, bu SOAni amalga oshirishning faqat bitta usuli. SOA har qanday boshqa xizmatga asoslangan texnologiya (masalan, CORBA va REST) yordamida amalga oshirilishi mumkin.

Tavsiya: