Perbezaan Antara SOA dan Perkhidmatan Web

Anonim

SOA vs Perkhidmatan Web

Perkhidmatan web digunakan untuk membina aplikasi yang boleh menghantar / menerima mesej menggunakan SOAP melalui HTTP. Perkhidmatan web adalah fungsi pakej yang dipublikasikan di web. SOA adalah satu set konsep seni bina yang digunakan untuk pembangunan dan integrasi perkhidmatan. Perkhidmatan web boleh digunakan untuk melaksanakan SOA. Tetapi ia hanya satu kaedah untuk merealisasikan aplikasi berasaskan SOA.

Apakah Perkhidmatan Web?

Perkhidmatan Web adalah satu kaedah komunikasi melalui rangkaian. Menurut W3C, perkhidmatan Web adalah sistem yang didedikasikan untuk menyokong transaksi mesin ke mesin melalui rangkaian. Ia adalah API Web yang diterangkan dalam WSDL (Web Description Service Language), dan perkhidmatan Web biasanya lengkap dan tersusun sendiri. Perkhidmatan web boleh ditemui menggunakan protokol UDDI (Universal Description, Discovery and Integration). Dengan bertukar mesej SOAP (Simple Access Protocol) biasanya melalui HTTP (dengan XML), sistem lain boleh berinteraksi dengan perkhidmatan Web.

Perkhidmatan web digunakan dalam beberapa cara seperti RPC (Panggil Prosedur Jauh), SOA (Perkhidmatan Berorientasikan Seni Bina) dan REST (Pemindahan Negeri Perwakilan). Terdapat dua kaedah reka bentuk automatik untuk membangunkan perkhidmatan Web. Kaedah pendekatan bottom-up dengan membuat kelas pertama dan kemudian menggunakan alat generasi WSDL untuk mengarang kelas ini sebagai perkhidmatan Web. Pendekatan top-down berkaitan dengan menentukan spesifikasi WSDL dan kemudian menggunakan alat penjanaan kod untuk menghasilkan kelas yang sesuai. Perkhidmatan web mempunyai dua kegunaan utama. Mereka boleh digunakan sebagai komponen aplikasi boleh guna semula dan / atau untuk menyambung aplikasi web yang berjalan pada platform yang berbeza.

Apa itu SOA?

SOA (Seni bina berorientasikan perkhidmatan) adalah satu set konsep seni bina yang digunakan untuk pembangunan dan integrasi perkhidmatan. SOA menangani pengkomputeran yang diedarkan, di mana pengguna menggunakan satu set perkhidmatan interoperable. Pelbagai pengguna boleh menggunakan perkhidmatan tunggal dan sebaliknya. Oleh itu, SOA sering digunakan untuk mengintegrasikan pelbagai aplikasi yang menggunakan platform yang berbeza. Untuk SOA untuk beroperasi dengan betul, perkhidmatan harus dilingkungi dengan sistem operasi dan teknologi aplikasi yang mendasarinya. Pemaju SOA membuat perkhidmatan menggunakan unit fungsi, dan menjadikannya tersedia melalui internet. Perkhidmatan web boleh digunakan untuk melaksanakan seni bina SOA. Dalam hal ini, perkhidmatan web menjadi unit fungsi SOA diakses melalui internet. Perkhidmatan web boleh digunakan oleh sesiapa tanpa peduli tentang platform atau bahasa pengaturcaraan yang digunakan untuk membangunkannya. SOA dibina secara langsung berdasarkan prinsip orientasi perkhidmatan, yang bercakap mengenai perkhidmatan dengan antara muka mudah yang boleh diakses secara bebas oleh pengguna tanpa perlu bimbang tentang pelaksanaan platform sebenar perkhidmatan itu.

Apakah perbezaan antara SOA dan Perkhidmatan Web?

Terdapat beberapa perbezaan utama antara perkhidmatan Web dan SOA. Perkhidmatan web menentukan teknologi web yang boleh digunakan untuk membina aplikasi yang boleh menghantar / menerima mesej menggunakan SOPA melalui HTTP. Walau bagaimanapun, SOA adalah model seni bina untuk melaksanakan aplikasi berasaskan perkhidmatan secara longgar. Perkhidmatan web boleh digunakan untuk melaksanakan aplikasi SOA. Walaupun pendekatan perkhidmatan web kepada SOA telah menjadi sangat popular, ia hanya satu kaedah untuk melaksanakan SOA. SOA boleh dilaksanakan dengan menggunakan teknologi berasaskan perkhidmatan lain (contohnya CORBA dan REST).