Saya telah melalui berbagai pertanyaan / artikel tentang Broker Pesan dan ESB (Bahkan di stackoverflow). Masih bukan petunjuk karena apa perbedaan demarkasi CLEAR antara Pialang Pesan dan ESB? Sekarang di sini saya mencoba membandingkan produk, Websphere Broker dan Mule ESB !!
Pertama, apakah (ada versi) Webshere Broker adalah ESB? Orang-orang produk IBM kami mengklaimnya sebagai ESB! (Saya tidak terkejut tentang hal itu).
Informasi terbatas saya memberi tahu saya bahwa Pialang Pesan berfungsi pada model HUB-SPOKE. Namun ESB bekerja pada arsitektur bus. Sekarang, apa artinya itu? Saya telah membaca daripada jika HUB gagal (tidak tersedia saya kira) maka broker sepenuhnya gagal. Yang bukan kasus ESB (Jadi kata orang-orang). Apa yang saya tidak mengerti di sini adalah "Bagaimana jika BUS" gagal?
Sekarang hal yang biasa tentang ESB dan Broker adalah bahwa, mereka menyediakan perutean, transformasi, orkestrasi dll. Jadi jika keduanya memberikan ini, maka mengapa saya memilih satu dari yang lain.
Area konflik lainnya adalah mengenai TRANSFORMASI. Apakah ESB memfasilitasi dengan cara yang berbeda bila dibandingkan dengan Pialang Pesan? Saya akan sangat suka wawasan tentang ini.
Sekarang berbicara tentang penskalaan HORIZONTAL. Siapa yang mengungguli siapa? Atau keduanya sama-sama scalable dalam hal kompleksitas (atau faktor lainnya). Tentu saja dari segi biaya, Webshpere Broker akan membebani Anda untuk setiap kotak (apalagi masing-masing cpu). Saya percaya, bahkan MULE ESB komersial tidak melakukan itu. Mengesampingkan bagian Biaya dari itu, apa implikasi dari penskalaan ESB dan penskalaan Pialang Pesan. Saya kebetulan tahu Anda dapat meningkatkan ke Level Layanan di ESB. Apakah ini mungkin di Pialang Pesan?
sumber
Jawaban:
Anda dapat menggunakan broker transformasi tanpa bus layanan, dan sebaliknya. Dalam hal produk tertentu saya tidak berpikir ada yang murni atau yang lain karena cara masing-masing saling melengkapi. Beberapa produk lebih kuat di satu area, lainnya lebih kuat di yang lain. Mungkin suatu pilihan perlu dibuat berdasarkan fungsi mana yang paling baik mencakup masalah individu.
Seorang pialang mungkin memiliki "blok lego" bawaan yang lebih baik untuk membangun rantai transformasi daripada produk ESB. Seorang pialang yang ditekan ke dalam layanan sebagai ESB dapat dihancurkan di bawah beban dan tidak memiliki skala yang baik, atau mungkin kurang memiliki jurnal yang kuat dan alat untuk berurusan dengan jurnal.
Beberapa ESB memungkinkan pemutakhiran basis data digulirkan kembali dan antrian untuk diputar ulang ke dalam aplikasi yang dikoreksi begitu kesalahan yang mengerikan dalam logika telah ditemukan dan diperbaiki. Saya tidak berpikir sebagian besar broker mengintegrasikan tingkat dukungan transaksional tersebut. Agar ini berfungsi di semua "transaksi" Anda, hampir harus menjadi acara bisnis (penjualan, pembaruan, perubahan kepemilikan, dll.) Daripada sesuatu seperti "pembaruan basis data" RPCish.
sumber
Penafian: Saya seorang konsultan IBM dan berspesialisasi dalam WebSphere ESB. Komentar ini tidak tersisa dalam kapasitas resmi apa pun.
ESB lebih merupakan pola atau konsep arsitektural daripada produk - secara umum, cara rekayasa lepas kopling yang berbasis layanan. Definisinya diperebutkan dan tidak diatur dengan tepat. Secara umum, ESB diatur layanan yang tidak terkait (dalam arti teknis) - mereka mengekspos antarmuka, dan mereka mengkonsumsinya dari layanan lain. Secara umum tidak ada hub dan arsitektur berbicara yang terlibat, meskipun mungkin ada.
IBM tentu saja memasarkan WebSphere Message Broker dan WebSphere ESB sebagai produk yang membuatnya mudah untuk membangun ESB (bersama dengan perangkat keras DataPower). Mereka memiliki akar teknologi yang berbeda, tetapi memiliki beberapa tujuan yang tumpang tindih. Juga, bukan berarti Anda tidak dapat membuat ESB dengan banyak hal lain yang tidak dicap sebagai 'produk ESB'.
Itu tidak menjawab semua pertanyaan Anda, tetapi semoga mengatasi bagian IBM.
sumber
Perbedaan antara Pialang Pesan dan ESB (Bus Layanan Perusahaan) terutama pada kata 'bus'.
Bagi saya, Pialang Pesan adalah salah satu (biasanya besar) proses yang mengubah data dari satu struktur ke struktur lain atau mengubah konten.
ESB adalah middleware berorientasi pesan (MOM) plus layanan tambahan, salah satunya bisa berupa Pialang Pesan. Jadi ESB dapat menyertakan Pialang Pesan sebagai salah satu komponennya. Bus terdiri dari lebih dari satu proses, jika tidak saya tidak akan menyebutnya 'bus'. Sifat bus adalah bahwa ada beberapa komponen yang melayani tugas yang berbeda, masing-masing berkomunikasi melalui MOM dan mengikuti beberapa bentuk 'format data umum'. Bus akan terdiri dari: aplikasi yang mengirim data ke MOM, adaptor database, Pialang Pesan, jembatan MOM, dll.
Pemisahannya sedikit bertahap, tetapi perbedaan terbesar antara arsitektur Message Broker dan Bus adalah granularitas . Jika tugas Anda adalah mengintegrasikan aplikasi A, B, .., Z dan beberapa database, Anda dapat melakukan ini dengan satu Broker Pesan besar yang menghubungkan masing-masing dan semua orang. Atau dengan ESB di mana beberapa komponen kecil mengambil alih hanya tugas-tugas kecil. Misalnya satu adaptor terhubung ke A, yang lain ke B (tetapi mereka tidak melakukan transformasi), maka masing-masing mengirim barang-barang mereka ke satu (atau lebih) Pialang Pesan, yang masing-masing harus dibuat sesederhana mungkin - misalnya tidak harus tahu tentang model data 'A' atau 'B'. ESB yang baik harus memiliki definisi data umum tentang bus, abstrak dari 'perbedaan' masing-masing aplikasi.
TRANSFORMASI: ESB tidak membantu transformasi, kecuali jika disertai dengan Pialang Pesan. Tetapi setiap ESB yang baik harus tetap menyertakan Pialang Pesan. Pialang Pesan harus menjadi pakar bus Anda untuk transformasi, tetapi tidak ada yang lain.
Penskalaan HORIZONTAL: jika Anda hanya memiliki 3 hal untuk dihubungkan (sekarang dan selamanya), mungkin tidak sepadan dengan upaya untuk mendapatkan ESB yang lengkap. Pialang Pesan memiliki keuntungan karena hanya satu proses besar. Anda dapat mengonfigurasi semua yang ada di sana dan memiliki lokasi pusat untuk semua pemetaan, penyaringan, dan perutean data Anda.
Tetapi jika Anda memiliki 30 aplikasi untuk dihubungkan, satu Broker Pesan mungkin akan berhenti total. Tentu saja Anda dapat membeli lebih banyak contoh, menjalankan hal-hal yang berlebihan, dll. Tetapi Anda harus mengubah strategi Anda untuk 'melokalisasi' pekerjaan. Setiap adaptor aplikasi (masing-masing bisa menjadi satu contoh Pialang Pesan kecil) harus dapat menghasilkan dan / atau menerima model data umum yang diabstraksi (mis. XML dengan XSD bersama). Mungkin juga ada Pialang Pesan pusat untuk tugas-tugas transformasi, tetapi contoh itu harus tidak menyadari data model A atau B. Jadi ESB harus memindahkan pemrosesan ke komponen ahli alih-alih menjaga segala sesuatu di tempat sentral.
sumber
Saya baru saja membaca artikel ini oleh Udi Dahan beberapa hari yang lalu, yang mungkin memberi Anda pandangan yang lebih jelas tentang apa yang saya rasakan adalah satu perbedaan mendasar.
http://www.udidahan.com/2011/03/24/bus-and-broker-pubsub-differences
Mengutip:
...
Semoga ini bisa membantu.
sumber
Bus Layanan Perusahaan memberikan tiga nilai utama untuk Bisnis:
ESB menyediakan kopling longgar dari layanan, memungkinkan layanan untuk dilarutkan ke dalam konteks aplikasi yang sama sekali berbeda dari ketika layanan pertama kali dibayangkan atau dikembangkan, dan mempromosikan penggunaan kembali aplikasi tanpa perlu melakukan pengkodean ulang aplikasi. WebSphere Message Broker (atau sekarang disebut IBM Integration Bus) adalah contoh utama dari Bus Layanan Perusahaan. Untuk contoh kesederhanaan kode yang menghasilkan kekuatan besar dalam beberapa baris, Anda dapat melihat posting saya di sini: http://soabus.org/viewtopic.php?f=3&t=13 . Konstruk dasar di dalam runtime IIB disebut Logical Message Tree(LMT). Segala sesuatu yang ingin dilakukan pengembang adalah beberapa jenis operasi pada LMT. ESQL adalah bahasa paling efisien yang dapat digunakan pengembang untuk melakukan operasi ini pada LMT, meskipun banyak bahasa lain didukung (misalnya, Java, PHP, Python, dll.) Tidak ada produk lain yang mendekati efisiensi dan kemudahan mengembangkan ESB aplikasi daripada IBM Integration Bus sejak 90 persen pengkodean aplikasi ini dilakukan dengan menyeret dan menjatuhkan node ke palet. Hanya menyisakan 10 persen pengkodean yang harus dilakukan oleh pengembang Message Flow. Omong-omong, WebSphere ESB telah dihentikan oleh IBM dan banyak produk yang bersaing dengan IBM Integration Bus belum melihat perkembangan baru pada mereka selama beberapa tahun sekarang. Daftar berbagai penawaran produk ESB dapat dilihat di soabus.org.
sumber
IBM sejak itu telah mengubah nama penawaran ESB mereka, jadi saya tidak akan membahas nama atau vendor.
ESB memungkinkan informasi bisnis mengalir di antara aplikasi yang berbeda di berbagai platform perangkat keras dan perangkat lunak. ESB lebih merupakan lapisan middleware yang menyimpan logika konektivitas aplikasi dan logika bisnis minimal hingga TANPA. Hal ini memungkinkan aplikasi untuk melakukan yang terbaik tanpa khawatir tentang menanamkan logika konektivitas apa pun tentang cara berinteraksi dengan sejumlah aplikasi N lain yang membutuhkan data dari itu. Arsitektur ESB berusaha untuk memecahkan kekacauan spaghetti point to point dalam suatu perusahaan.
ESB dan Pialang Pesan adalah jenis sinonim satu sama lain, namun karena salah satu tanggapan di atas telah menyoroti bahwa pola Pialang Pesan adalah bagian dari domain ESB yang lebih besar. Huruf "B" dalam ESB dianalogikan dengan bus (perangkat keras) dalam arsitektur komputer. Bus di motherboard atau di komputer menghubungkan berbagai komponen untuk berfungsinya komputer. ESB adalah bus berbasis perangkat lunak yang menghubungkan berbagai layanan di suatu perusahaan. Hub dan spoke adalah salah satu pola yang didukung oleh arsitektur ESB. Di dunia monolitik, setiap vendor memiliki arsitektur penyebaran ketersediaan tinggi mereka sendiri untuk memastikan ESB tersedia. Tawaran terbaru dari setiap vendor ESB adalah dalam hal model penyebaran berbasis layanan-mikro atau di-hosting di cloud mereka sendiri yang dikenal sebagai iPAAS. Jadi ini memastikan bahwa Bus tidak akan pernah gagal atau gagal sementara dengan penyembuhan sendiri berdasarkan model penempatan Anda yang dipilih. Dengan penyebaran berbasis layanan mikro atau iPAAS, ESB sekarang memiliki kemampuan penskalaan otomatis (horizontal atau vertikal) dengan berbagai fitur berdasarkan vendor yang dipilih.
Untuk kapabilitas tingkat sangat tinggi yang disediakan ESB, Anda bisa melalui tautan berikut => https://en.wikipedia.org/wiki/Enterprise_service_bus
sumber