Saya telah mencoba membuat sistem di mana orang dapat mengirimkan file untuk ditandatangani. Setiap pengiriman dapat memiliki beberapa file dan hasilnya akan dikirim kembali ke pengguna jika semua file dalam setiap pengiriman selesai.
Saat ini saya memiliki 6 kotak penandatanganan yang menandatangani satu file dalam satu waktu. Jadi untuk setiap pengiriman saya perlu memisahkan semua file dan menyeimbangkannya di antara 6 kotak penandatanganan, dan setelah itu saya perlu mengambil hasilnya dan melacak apakah semua file dalam pengiriman ini telah selesai.
Jika memungkinkan, saya juga ingin membatasi jumlah maksimum kotak penandatanganan yang dapat digunakan setiap kiriman sehingga kiriman dalam jumlah besar tidak membuat pekerjaan lain kelaparan.
Pengaturan saya saat ini adalah saya memiliki antrian pengiriman dan beberapa konsumen antrian pengiriman akan mengambil pesan darinya satu per satu, memecah pengiriman menjadi file individual dan mengirimkannya ke antrian file. Dan 6 kotak penandatanganan akan menjadi 6 konsumen antrian file. Saya mengalami kesulitan menulis hasil kembali ke konsumen penyerahan yang melacak apakah semua file telah selesai untuk penyerahan ini, saya juga tidak dapat mengontrol jumlah maksimum kotak penandatanganan yang digunakan untuk setiap pekerjaan.
Saya melihat pengaturan RPC untuk Rabbitmq yang memungkinkan hasilnya ditulis kembali. Masalahnya adalah panggilan rpc memblokir setiap file, dan saya ingin beberapa file untuk pengiriman yang sama dapat masuk secara paralel. Jadi saya memerlukan beberapa saran tentang arsitektur Rabbitmq dan aliran pesan untuk skenario jenis ini.