amqp

In which domains are message oriented middleware like AMQP useful?

旧巷老猫 提交于 2019-12-02 14:00:47
What problem do MOM (Message Oriented Middleware) solve? Scalability? Integration? In which domain are they typically used and in which domains are they typically not used? For example, say, is Google using such solution for it's main search engine or to power GMail? What about big websites like Walmart, eBay, FedEx (pretty much a Java shop) and buy.com (pretty much an MS shop)? Does MOM solve a need there? Does it make any sense when you're writing a Webapp where you control the server-side and have an homogenous environment (say tens of Amazon EC2 instances all running Linux + Java JVMs)

Unable to access ActiveMQ using JMS based code and amqp 1.0

这一生的挚爱 提交于 2019-12-02 10:46:24
I'm trying to connect to an ActiveMQ broker using AMQP 1.0, but I want to use JMS within my application code. I'm interested in using JMS primarily because I want developers to be able to use API's that they are already familiar with. I have ActiveMQ 5.14.0 running on localhost and the following code : public static void main(String[] args) throws JMSException, InterruptedException { Connection connection = null; try { // Producer ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("amqp://localhost:5672"); connection = connectionFactory.createConnection(); connection.start();

Can RabbitMQ consumer configure to consume only a defined number of attempts for the same message

和自甴很熟 提交于 2019-12-02 07:00:01
Does RabbitMQ capable in a way, I can define my consumer that it has a limit of consuming the same message. i.e my consumer doing a basic Reject with enqueue=true. And it will infinitely keep on listening to the same message. I am not talking about TTL on the queue side. But a control/config over consumer to tell I want to consume this only 5 times and then send it to another queue for instance. Can this be achieved ? So yes I believe this can be done. You will need to cache the delivery tags of the messages received and also keep track of a reject count. Once the reject count for a particular

RabbitMQ consumer overload

…衆ロ難τιáo~ 提交于 2019-12-02 06:15:57
问题 I`ve been reading about the principles of AMQP messaging confirms. (https://www.rabbitmq.com/confirms.html). Really helpful and wel written article but one particular thing about consumer aknowledgments is really confusing, here is the quote: Another things that's important to consider when using automatic acknowledgement mode is that of consumer overload . Consumer overload? Message queue is processed and kept in RAM by broker (if I understand it correctly). What overload is it about? Does

Connection Azure service bus via Java client

我们两清 提交于 2019-12-02 04:12:26
问题 I am trying to connect Azure service bus from Java client with AMQP protocol I follow the instruction in the following link: http://azure.microsoft.com/en-us/documentation/articles/service-bus-java-how-to-use-jms-api-amqp/ 1) created service bus in Azure portal with the name space ' availo ' and a queue named ' queue1 ' 2) from service bus connection information I've got the following: SharedAccessKeyName=RootManageSharedAccessKey SharedAccessKey={key} 3) created "servicebus.properties" file

SpringCloud系列第09节之消息总线Bus

半腔热情 提交于 2019-12-02 03:27:45
上一节的统一配置中心《 SpringCloud系列第08节之配置中心Config 》演示了属性热加载 其中提到,每次热加载属性时,都要逐次调用每个应用的 /refresh 接口(或者维护 Git 仓库的 Webhooks)来触发属性更新 随着系统的扩充,应用的增加,若所有的触发动作都要手工去做(或者维护 Git 仓库的 Webhooks),这是不人道的 所以我们希望配置中心的属性发生变化时,能有一种途径去通知所有的相关应用去自动刷新配置 而通过 Spring Cloud Bus 就能够实现以消息总线的方式,通知集群上的应用,去动态更新配置信息 本文是以 RabbitMQ 来作为消息代理的中间件(实现将消息路由到一个或多个目的地),所以要先安装 RabbitMQ RabbitMQ的安装 RabbitMQ 是 AMQP(Advanced Message Queuing Protocol)协议的一个开源实现的产品 它是由以高性能、健壮、可伸缩性出名的 Erlang OTP 平台实现的工业级的消息队列服务器 所以在安装 RabbitMQ 之前,要先安装 Erlang,下面是它们的下载地址 http://erlang.org/download/otp_win64_19.3.exe http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.9

Connection Azure service bus via Java client

半世苍凉 提交于 2019-12-02 01:43:04
I am trying to connect Azure service bus from Java client with AMQP protocol I follow the instruction in the following link: http://azure.microsoft.com/en-us/documentation/articles/service-bus-java-how-to-use-jms-api-amqp/ 1) created service bus in Azure portal with the name space ' availo ' and a queue named ' queue1 ' 2) from service bus connection information I've got the following: SharedAccessKeyName=RootManageSharedAccessKey SharedAccessKey={key} 3) created "servicebus.properties" file for the JNDI lookup connectionfactory.SBCF = amqps://RootManageSharedAccessKey:encoded(key)@availo

RabbitMQ consumer overload

为君一笑 提交于 2019-12-01 23:40:30
I`ve been reading about the principles of AMQP messaging confirms. ( https://www.rabbitmq.com/confirms.html ). Really helpful and wel written article but one particular thing about consumer aknowledgments is really confusing, here is the quote: Another things that's important to consider when using automatic acknowledgement mode is that of consumer overload . Consumer overload? Message queue is processed and kept in RAM by broker (if I understand it correctly). What overload is it about? Does consumer have some kind of second queue? Another part of that article is even more confusing:

ubuntu下安装amqp扩展

拟墨画扇 提交于 2019-12-01 20:35:35
目录 环境 下载扩展: 安装amqp: 验证 环境 系统 ubuntu 16.04 php 7.1 下载扩展: sudo apt-get -y install gcc make autoconf libc-dev pkg-config sudo apt-get -y install libssl-dev sudo apt-get -y install librabbitmq-dev 安装amqp: sudo pecl install amqp 当出现如下提示时,只需按回车键即可 Set the path to librabbitmq install prefix [autodetect] : 添加 extension=amqp.so sudo bash -c "echo extension=amqp.so > /etc/php/7.1/mods-avaliable/amqp.ini" 复制到conf.d,做软链: sudo ln -s /etc/php/7.1/mods-available/amqp.ini /etc/php/7.1/fpm/conf.d/20-amqp.ini sudo ln -s /etc/php/7.1/mods-available/amqp.ini /etc/php/7.1/cli/conf.d/20-amqp.ini 重启php-fpm: sudo

RabbitMQ

只愿长相守 提交于 2019-12-01 19:03:32
1.介绍 RabbitMQ是一个消息代理 - 一个消息系统的媒介。它的工作就是接收和转发消息。你可以把他想象成一个邮局,你把信件都放到这个邮箱中,邮递员叔叔就会把信件投递到你的收件人处。只是邮箱中放的是你的信件,而我们要使用的RabbitMQ中存放的是我们的二进制数据。 下面是RabbitMQ和消息所涉及到的一些术语。 生产(Producing)的意思就是发送。发送消息的程序就是生产者(producer)。我们一般使用"P"表示。 队列(queue)就是存在于RabbitMQ中邮箱的名称。实质上队列就是一个巨大的消息缓冲区,我们同一时刻能够处理的数据有限,所以就将这些数据按照先后顺序存在这个消息队列中,我们一点点的进行处理。 消费(Consuming)和接收(receiving)是同一个意思。一个消费者(consumer)就是一个等待获取消息的程序。我们把它绘制为"C": 2.消息队列的作用 1)程序解耦 允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。 2)冗余: 消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险。 许多消息队列所采用的"插入-获取-删除"方式中,在把一个消息从队列中删除之前,需要你的处理系统明确的指出该消息已经被处理完毕,从而确保你的数据被安全的保存直到你使用完毕。 3)峰值处理能力: