草庐IT

rabbitmq3

全部标签

c# - RabbitMQ 异步支持

RabbitMQ.NET客户端有任何类型的异步支持吗?我希望能够异步连接和使用消息,但到目前为止还没有找到方法。(对于消费消息,我可以使用EventingBasicConsumer,但这不是一个完整的解决方案。)只是为了提供一些背景信息,这是我目前如何使用RabbitMQ的示例(代码取self的博客):varfactory=newConnectionFactory(){HostName="localhost"};using(varconnection=factory.CreateConnection()){using(varchannel=connection.CreateModel(

c# - RabbitMQ:erl.exe 占用高 CPU 使用率

我在我的应用程序中实现了rabbitmq,它在WindowsServer2008服务器上运行,问题是erl.exe占用了很高的CPU使用率,有时它达到40-45%的CPU使用率,即使在理想情况下(不处理时)任何队列)它至少需要4-15%的CPU使用率。CPU使用率高的原因可能是什么?是否有任何设置或任何其他我需要做的事情。 最佳答案 你说即使不处理队列,它仍然在4-15%,但是你的应用程序在运行吗?如果您以前没有,请在没有应用程序使用Rabbit时尝试监视erl。想到的一件事是,您可能在循环中使用QueingBasicConsume

c# - 如何使用 EasyNetQ/RabbitMQ 进行错误处理

我在C#中使用RabbitMQ和EasyNetQ库。我在这里使用发布/订阅模式。我还有一些问题希望有人能帮助我解决:如果在使用消息时出现错误,它会自动移至错误队列。我如何实现重试(以便它被放回原始队列,当它处理X次失败时,它被移动到死信队列)?据我所知,总是有1个错误队列用于转储来自所有其他队列的消息。如何让每种类型有1个错误队列,以便每个队列都有自己关联的错误队列?如何轻松重试错误队列中的消息?我试过Hosepipe,但它只是将消息重新发布到错误队列而不是原始队列。我也不太喜欢这个选项,因为我不想在控制台中摆弄。最好我只针对错误队列进行编程。有人吗? 最佳

php - RabbitMQ 中 $channel->wait() 是什么意思

我是RabbitMQ的新手。我正在使用带有codeigniter的php-amqplib库,但仍然想知道我缺乏的一些知识。为什么使用$channel->wait()?为什么它总是驻留在一个无休止的while循环中?如何/能否绕过无限while循环。就像在我项目的一个用户想要向100k潜在客户广播新事件的情况下,如果第二个用户有大约100封邮件要发送,第二个用户就会受到影响,第二个用户必须先等待100k封邮件被发送轮到最后一个用户。我需要一个适用于并发消费者的解决方案,它可以在不影响其他消费者的情况下顺利工作这是我的代码片段:publicfunctioncampaign2(){$this

PHP amqp + rabbitMQ -- 长时间运行的生产者 : can send messages to queues already declared, 但不能声明新队列

我有一个应该一直运行的“生产者”,但似乎在一天左右之后,它仍然能够将消息发送到它之前声明的队列,但是当试图声明一个新队列时,它炸毁:'PhpAmqpLib\Exception\AMQPHeartbeatMissedException'withmessage'Missedserverheartbeat'in/php-amqplib/php-amqplib/PhpAmqpLib/Wire/IO/AbstractIO.php:140我以为心跳只针对消费者(因为没有地方可以检查生产者的心跳)?当我不是“消费者”时,正在检查心跳是不是一个错误?或者是不是当我声明一个队列时我的脚本也变成了一个“消

php - 在 RabbitMQ PHP 中设置消息优先级

我已经找到了很多在RabbitMQ中为Java、Spring等设置消息优先级的示例,但到目前为止我还没有找到如何在PHP中实现它。事实上,$channel->basic_publish()函数似乎不支持提供附加参数(https://github.com/videlalvaro/php-amqplib/blob/master/PhpAmqpLib/Channel/AMQPChannel.php),即使您可以在RabbitMQgui中执行此操作。有人在PHP中使用RabbitMQ获得消息优先级吗? 最佳答案 好吧,它一直盯着我的脸。您在

主流消息队列RocketMq,RabbitMq比对使用

首先整理这个文章是因为我正好有机会实战了一下rocketmq,阿里巴巴的一个开源消息中间件。所以就与以往中rabbitmq进行小小的比较一下。这里主线的根据常见面试问题进行整理。1.消息队列常用的场景1.1.削峰例如我们做得考试系统中,用户通过人脸识别登录系统,考虑到考试系统的特殊性,三万名考生参加考试,需要记录人脸识别登录照片。从考试完结果上看,用户最大并发数在4000,于是我们采用rocketMq来进行异步消费用户人脸识别图片,当时统计rocketMq每秒1000消费消息。及时反馈了考生人脸识别登录成功,对数据库写操作也起到很大的缓冲功能。1.2.解耦如常用ABCD系统中,BCD系统都需要

RabbitMQ 教你如何创建虚拟主机

 🧲1.创建新用户🧲点击admin后输入账号密码点击adduser即可创建了一个新用户     创建好用户后就会在上方展示🧩2.创建虚拟主机🧩在正常安装RabbitMQ之后,系统会默认创建一个虚拟主机名称以/的形式 点击VirtualHosts添加一个名为test的虚拟主机 添加成功后点击test这里我们为虚拟主机添加用户 点击权限后,选择User的下拉中就能看到我们的刚添加的用户heng 点击Setpermission设置权限后就能在上方权限列表中看见我们刚添加的用户 回到虚拟主机的页面后,我们发现会多出一条记录 到这里我们为虚拟主机添加用户的工作就完成啦~ 总结:            虚

Spring Boot项目使用RabbitMQ队列

SpringBoot项目使用RabbitMQ队列一、Rabbitmq的安装RabbitMQ是一个开源的遵循AMQP协议实现的基于Erlang语言编写,**即需要先安装部署Erlang环境再安装RabbitMQ环境。erlang的安装在windows中直接点击安装即可。安装完erlang后设置erlang的环境变量ERLANG_HOME。然后安装rabbitmq。安装成功后。可以在浏览器中输入http://localhost:15672,访问地址显示的结果如下。 这里的username输入“guest”,password输入“guest”,然后点击“login”,之后进入rabbitmq的界面。

php - Rabbitmq - php amqp broken broken pipe 错误

我正在处理一个巨大的xml文档(其中包含大约一百万个条目),然后使用rabbitmq将格式化版本导入数据库。每次发布大约200,000个条目后,我都会收到一个brokenpipe错误,并且rabbitmq无法从中恢复。NoticeError:fwrite():sendof2651bytesfailedwitherrno=11Resourcetemporarilyunavailablein[/var/www/ribbon/app/Console/Command/lib/php_amqplib/amqp.inc,line439]NoticeError:fwrite():sendof33by