message-queue

Is there any reason to use RabbitMQ over Kafka?

感情迁移 提交于 2019-11-28 02:36:53
I've been asked to evaluate RabbitMQ instead of Kafka but found it hard to find a reason that it's doing something better than Kafka. Does anyone know if it is really better in throughput, durability, latency, or ease-of-use? Lovisa Johansson RabbitMQ is a solid, general purpose message broker that supports several protocols such as AMQP, MQTT, STOMP etc. It can handle high-throughput and common use cases for it is to handle background jobs or as message broker between microservices. Kafka is a message bus optimized for high-ingress data streams and replay. Kafka can be seen as a durable

Connecting to IBM MQ using CCDT file in JMS

本秂侑毒 提交于 2019-11-28 02:08:52
I am trying to connect to IBM MQ using JMS and client channel definition table (CCDT). I was able to connect successfully to the QueueManager when i specify the MQ properties individually. But when i try to use CCDT file i get the below exception. As client channel definition table (CCDT) is used to determine the channel definitions used by client applications to connect to the queue manager i didnt set QueueManager Name. ERROR> com.ssc.ach.mq.JMSMQReceiver[main]: errorMQJMS2005: failed to create MQQueueManager for '' javax.jms.JMSException: MQJMS2005: failed to create MQQueueManager for '' at

Determine priority of a window message

落爺英雄遲暮 提交于 2019-11-28 01:18:35
问题 Is there any way to programmatically check the priority of a window messages in its message queue? For example: Some of window messages, WM_PAINT and WM_TIMER are known have the lowest priority and be placed after messages with highest priority. I'm looking for something by which you can confirm that which one of two messages will have the lowest or highest priority or which message will be sent first or last? 回答1: That's just not how it works, Windows messages don't have a priority attached.

Node JS message queue on Heroku

时光毁灭记忆、已成空白 提交于 2019-11-28 00:50:12
问题 I need to move my Node JS server running on Heroku to a message queue architecture. Currently, the server receives a HTTP request, does some processing, and responds. The problem is that the processing takes some time, especially when there are lots of requests. This lengthy processing time causes the server to timeout, overload, and crash! My reading tells me a need a background worker to do the processing. I have zero experience with message queues and background workers and I'm looking for

Getting number of messages in a RabbitMQ queue

空扰寡人 提交于 2019-11-27 23:33:00
We're using amqplib to publish/consume messages. I want to be able to read the number of messages on a queue (ideally both acknowledged and unacknowledged). This will allow me to show a nice status diagram to the admin users and detect if a certain component is not keeping up with the load. I can't find any information in the amqplib docs about reading queue status. Can someone point me in the right direction? Using pika: import pika pika_conn_params = pika.ConnectionParameters( host='localhost', port=5672, credentials=pika.credentials.PlainCredentials('guest', 'guest'), ) connection = pika

IBM WebSphere MQ request/reply scenario

邮差的信 提交于 2019-11-27 21:29:17
I'm currently working on a project where I need to interface with an IBM system which communicates with the outside world through WebSphere MQ. I need to query the system in a "request-response" fashion using queues, and I will be doing this through a queue manager. However, I can't quite get my head around how this works in practical terms. Say I've got multiple instances of the same application which puts a message onto a request queue. The message gets a CorrelationId and MessageId upon leaving the application, and a ReplyToQueue property gets set on each message to make sure that the queue

Sidekiq: Ensure all jobs on the queue are unique

坚强是说给别人听的谎言 提交于 2019-11-27 20:25:05
问题 I have some update triggers which push jobs onto the Sidekiq queue. So in some cases, there can be multiple jobs to process the same object. There are a couple of uniqueness plugins ("Middleware", Unique Jobs), they're not documented much, but they seem to be more like throttlers to prevent repeat processing ; what I want is a throttler that prevents repeat creating of the same jobs. That way, an object will always be processed in its freshest state. Is there a plugin or technique for this?

Asynchronous processing or message queues in PHP (CakePHP) [closed]

蹲街弑〆低调 提交于 2019-11-27 17:06:56
I am building a website in CakePHP that processes files uploaded though an XML-RPC API and though a web frontend. Files need to be scanned by ClamAV, thumbnails need to be generated, et cetera. All resource intensive work that takes some time for which the user should not have to wait. So, I am looking into asynchronous processing with PHP in general and CakePHP in particular. I came across the MultiTask plugin for CakePHP that looks promising. I also came across various message queue implementations such as dropr and beanstalkd . Of course, I will also need some kind of background process,

Advice on Python/Django and message queues

我的梦境 提交于 2019-11-27 17:01:37
I have an application in Django, that needs to send a large number of emails to users in various use cases. I don't want to handle this synchronously within the application for obvious reasons. Has anyone any recommendations for a message queuing server which integrates well with Python, or they have used on a Django project? The rest of my stack is Apache, mod_python, MySQL. So far I have found no "nice" solution for this. I have some more strict soft realtime requirements (taking a picture from a cardboard box being labeled) so probably one of the approaches is fast enough for you. I assume

Long running REST API with queues

半城伤御伤魂 提交于 2019-11-27 16:53:45
We are implementing a REST API, which will kick off multiple long running backend tasks. I have been reading the RESTful Web Services Cookbook and the recommendation is to return HTTP 202 / Accepted with a Content-Location header pointing to the task being processed. (e.g. http://www.example.org/orders/tasks/1234 ), and have the client poll this URI for an update on the long running task. The idea is to have the REST API immediately post a message to a queue, with a background worker role picking up the message from the queue and spinning up multiple backend tasks, also using queues. The