Mengatur layanan mikro membantu Anda membangun proses kompleks dalam produk. Agar tidak harus menulis mekanisme ini dengan tangan, pengembang dapat menggunakan kerangka kerja siap pakai yang menyertakan alat untuk mengelola layanan mikro. Kami di True Engineering mempelajari topik ini dan berbicara tentang tiga kerangka kerja tersebut.
Saat mengotomatiskan proses bisnis yang kompleks, sebuah produk dapat melibatkan beberapa layanan mikro sekaligus. Dan jika cukup sederhana untuk membangun interaksi beberapa modul dalam monolit, maka dalam arsitektur terdistribusi, di mana setiap komponen tersebut adalah aplikasi terpisah, kesulitan muncul.
Orkestrator layanan mikro memantau eksekusi proses. Hasilnya, data tidak hilang, dukungan menjadi lebih mudah untuk memperbaiki masalah, dan menjadi lebih mudah bagi pengembang untuk mengelola pengembangan keseluruhan sistem.
Anda dapat menulis modul seperti itu dari awal, atau Anda dapat menggunakan kerangka kerja yang sudah jadi. Jika sebuah perusahaan memiliki beberapa tim pengembangan, kerangka kerja seperti itu sangat diperlukan. Pertama, programmer tidak harus melakukan pekerjaan yang sama berulang kali. Kedua, ketika semua orang menggunakan alat umum, tim memiliki standar kerja yang seragam, dan ini segera memengaruhi kualitas produk. Alih-alih menciptakan kembali roda, semua orang berfokus pada pengembangan alat umum.
Arsitektur kerangka orkestrasi
Framework ini menyertakan komponen orkestrasi out-of-the-box. Ini adalah orchestrator itu sendiri, yang menerima tugas dan mentransfernya ke layanan mikro yang berfungsi untuk dieksekusi.
(, ), , . ยซ ยป, ยซ ยป, ยซ ยป. . , , .
, .
. , . , .
. . , - , , - . , Saga โ , - .
. , .
. , (, Java .NET).
, . , .
Conductor Netflix. - JSON-. , . - โ .
Zeebe Camunda. Camunda โ BPMN-, (, -). Camunda, Zeebe . โ , -. XML-.
Temporal. . โ , . .
:
. Zeebe . Temporal โ .
. , yj Zeebe . Saga .
. .
. Java-, .NET- .
Perbandingan tersebut menunjukkan bahwa tidak ada peluru perak - setiap kerangka kerja bagus dengan caranya sendiri. Alat tersebut perlu dipilih dalam dialog dengan perintah - seseorang mungkin lebih nyaman bekerja dengan JSON, yang lain akan menghargai visualisasi, dan yang ketiga ingin menggunakan kode yang bersih.
Namun kerangka kerja apa pun lebih baik daripada menyematkan orkestrasi di setiap kode produk secara terpisah. Dengan cara ini, pengembang harus mempelajari kembali mekanisme dan membebani kode setiap saat. Dan di seluruh perusahaan, Anda akan mendapatkan standar seragam yang membantu membawa semua tim Anda ke platform pengembangan umum.