Mencari untuk menggunakan antrian pesan di aplikasi web kecil yang saya buat dengan node.js. Saya melihat resque tetapi tidak yakin itu sesuai. Tujuannya adalah untuk mendorong notifikasi ke klien berdasarkan backend dan tindakan klien lainnya dengan socketio. Saya bisa melakukan ini hanya dengan socketio tetapi saya pikir mungkin antrian pesan yang tepat akan membuat ini lebih bersih dan saya tidak perlu menemukan kembali roda.
Apa sajakah pilihan di luar sana?
node.js
message-queue
Bjorn
sumber
sumber
Jawaban:
Anda bisa menggunakan redis dengan klien node_redis secepat kilat . Ia bahkan memiliki semantik pubsub built-in .
sumber
Anda dapat menggunakan klien STOMP node . Ini akan memungkinkan Anda berintegrasi dengan berbagai antrian pesan termasuk:
Saya belum pernah menggunakan perpustakaan ini sebelumnya, jadi saya tidak dapat menjamin kualitasnya. Tetapi STOMP adalah protokol yang cukup sederhana jadi saya curiga Anda dapat meretasnya menjadi pengiriman jika perlu.
Pilihan lainnya adalah menggunakan beanstalkd dengan node . beanstalkd adalah "antrian tugas" yang sangat cepat yang ditulis dalam C yang sangat bagus jika Anda tidak memerlukan fleksibilitas fitur dari pialang yang tercantum di atas.
sumber
Steker tak tahu malu: Saya sedang mengerjakan Bokeh : antrian tugas yang sederhana, dapat diskalakan, dan sangat cepat yang dibangun di atas ZeroMQ. Ini mendukung penyimpanan data pluggable untuk tugas-tugas yang ada, saat ini dalam memori, Redis dan Riak didukung. Saksikan berikut ini.
sumber
Berikut beberapa rekomendasi yang bisa saya buat:
node-amqp : Klien RabbitMQ yang telah berhasil saya gunakan dalam kombinasi dengan Socket.IO untuk membuat game multipemain waktu nyata dan aplikasi chat, antara lain. Sepertinya cukup bisa diandalkan.
zeromq.node : Jika Anda ingin menelusuri rute non-perantara, ini mungkin menarik untuk dilihat. Lebih banyak pekerjaan untuk mengimplementasikan fungsionalitas tetapi Anda lebih cenderung mendapatkan latensi yang lebih rendah dan throughput yang lebih tinggi.
sumber
zeromq.node
sekarang dipertahankan di sini: zeromq.jsLihat node-busmq - ini adalah bus pesan dengan tingkat produksi, ketersediaan tinggi, dan skalabel yang didukung oleh redis.
Saya menulis modul ini untuk cloud global kami dan saat ini digunakan di lingkungan produksi kami di beberapa pusat data di seluruh dunia. Ini mendukung antrian bernama, komunikasi peer-to-peer, pengiriman terjamin dan federasi.
Untuk informasi lebih lanjut tentang mengapa kami membuat modul ini, Anda dapat membaca posting blog ini: All Aboard The Message Bus
sumber
kue adalah satu-satunya antrian pesan yang Anda butuhkan
sumber
bull
lebih mudah bagi saya. Dengankue
saya tersesat dalam dokumentasi.Saya sarankan mencoba Kestrel , cepat dan sederhana seperti Pohon Kacang tetapi mendukung antrian fanout. Berbicara memcache. Itu dibangun menggunakan Scala dan digunakan di Twitter.
sumber
Anda mungkin ingin melihatnya
Redis Antrian Pesan Sederhana untuk Node.js
Yang menggunakan Redis dan menawarkan sebagian besar fitur Amazon SQS.
sumber
Bagaimana dengan Azure ServiceBus? Ini mendukung nodejs.
sumber
Lihat node-queue-lib . Mungkin cukup bagi Anda. Ini mendukung node.js dan browser. Memiliki dua strategi pengiriman: siaran dan round-robin. Hanya javascript.
Contoh cepat:
sumber
Saya menggunakan KUE dengan socketIO seperti yang Anda jelaskan. Saya menyimpan socketID dengan pekerjaan dan kemudian dapat mengambilnya kembali di Job Complete .. KUE didasarkan pada redis dan memiliki contoh yang bagus di github
sesuatu seperti ini....
sumber
Anda mungkin juga ingin melihat ewd-qoper8: https://github.com/robtweed/ewd-qoper8
sumber