SOA lwn ESB
SOA ialah satu set konsep seni bina yang digunakan untuk pembangunan dan penyepaduan perkhidmatan. Perkhidmatan ialah pakej publisiti fungsi yang ditawarkan melalui web. ESB ialah sekeping perisian infrastruktur yang menyediakan binaan seni bina perisian untuk menyediakan perkhidmatan asas untuk seni bina yang kompleks. ESB boleh digunakan sebagai platform di mana SOA direalisasikan.
Apakah itu SOA?
SOA (Seni bina berorientasikan perkhidmatan) ialah satu set konsep seni bina yang digunakan untuk pembangunan dan penyepaduan perkhidmatan. SOA berurusan dengan pengkomputeran teragih di mana pengguna menggunakan satu set perkhidmatan saling kendali. Berbilang pengguna boleh menggunakan satu perkhidmatan dan begitu juga sebaliknya. Oleh itu, SOA sering digunakan untuk mengintegrasikan pelbagai aplikasi yang menggunakan platform yang berbeza. Untuk SOA beroperasi dengan betul, perkhidmatan harus digandingkan secara longgar dengan sistem pengendalian dan teknologi aplikasi asas. Pembangun SOA mencipta perkhidmatan menggunakan unit kefungsian, dan menjadikannya tersedia melalui internet. Perkhidmatan web boleh digunakan untuk melaksanakan seni bina SOA. Dalam kes itu, perkhidmatan web menjadi unit kefungsian SOA yang boleh diakses melalui internet. Perkhidmatan web boleh digunakan oleh sesiapa sahaja tanpa mengambil berat tentang platform atau bahasa pengaturcaraan yang digunakan untuk membangunkannya. SOA dibina secara langsung berdasarkan prinsip orientasi perkhidmatan, yang bercakap tentang perkhidmatan dengan antara muka mudah yang boleh diakses secara bebas oleh pengguna, tanpa perlu risau tentang pelaksanaan platform sebenar perkhidmatan tersebut.
Apakah itu ESB?
ESB (Enterprise Service Bus) ialah sekeping perisian infrastruktur yang menyediakan binaan seni bina perisian untuk menyediakan perkhidmatan asas untuk seni bina yang kompleks. Tetapi terdapat banyak hujah sama ada untuk memanggil ESB sebagai gaya seni bina atau produk perisian atau sekumpulan produk. Ia menyediakan perkhidmatan melalui enjin berasaskan acara dan standard untuk pemesejan (yang sebenarnya adalah bas perkhidmatan). Di atas enjin pemesejan ini, lapisan abstraksi disediakan untuk membolehkan arkitek mengeksploitasi kemudahan yang ditawarkan oleh bas, tanpa menulis sebarang kod sebenar. ESB biasanya dilaksanakan melalui infrastruktur perisian tengah berasaskan standard.
Penggunaan istilah “bas” dalam ESB adalah disebabkan oleh fakta bahawa ESB menyediakan fungsi yang hampir sama dengan bas komputer fizikal, tetapi pada tahap abstraksi yang lebih tinggi. Salah satu kelebihan utama memiliki ESB ialah keupayaan untuk mengurangkan bilangan titik hubungan; dengan itu, menjadikan penyesuaian kepada perubahan lebih mudah. ESB boleh digunakan sebagai platform di mana SOA direalisasikan. Konsep transformasi/ penghalaan (berkaitan aliran) boleh dibawa ke SOA oleh ESB. Tambahan pula, dengan membuktikan abstraksi untuk titik akhir (dalam SOA), ESB menggalakkan gandingan longgar antara perkhidmatan.
Apakah perbezaan antara SOA dan ESB?
Terdapat beberapa perbezaan utama antara SOA dan ESB. SOA ialah model seni bina untuk melaksanakan aplikasi berasaskan perkhidmatan yang digandingkan secara longgar. ESB ialah sekeping perisian infrastruktur yang membantu pembangun membangunkan perkhidmatan, dan berkomunikasi antara perkhidmatan melalui API yang sesuai. ESB boleh digunakan sebagai platform di mana SOA direalisasikan. ESB hanyalah medium di mana perkhidmatan mengalir. ESB menyediakan kemudahan untuk komposisi dan penggunaan perkhidmatan, yang seterusnya melaksanakan SOA.