问题标签 [php-amqp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - RabbitMq:使用 PHP AMQP 在 Exchange 上设置 AMQP_AUTODELETE 标志
我正在尝试使用 AMQPExchange::setFlags ( int $flags ) 在我的交换中设置 AMQP_AUTODELETE 标志
http://php.net/manual/en/amqp.constants.php http://www.php.net/manual/en/amqpexchange.setflags.php
不工作... :(
$exchange->getFlags() 返回 0 而不是 16(AMQP_AUTODELETE 的整数值)。
但是当我以同样的方式设置 AMQP_DURABLE 标志时它会起作用,$exchange->getFlags() 返回 2。
有没有人找到解决方案?谢谢!!!
php - 按优先级消费多个队列
我有一个生产者向主题交换发送消息。每条消息都包含一个路由键。(为原始图道歉)
我正在使用php-amqplib并尝试使用多个队列。我想要实现的是按顺序测试每个队列,看看它是否有消息,如果有,处理它,否则,继续下一个队列。此外,如果找到消息,请从 Q1 重新开始检查过程。以下代码不起作用,但将演示我想要做的逻辑。
php - 如何在 PHP 和/或 Symfony2 中运行多个并行的 Rabbitmq/AMQP 消费者?
我有一个 news-scraper/RSS-aggregation,我通过这个 lib 广播消息:
https://github.com/videlalvaro/php-amqplib/
我目前有 1 个广播员/制作人和 1 个消费者。
有没有办法让多个消费者通过 PHP 并行运行?我知道 PHP 本身不支持这个。它可以通过 cURL 虚拟完成,但 afaik cURL 主要用于基于网络/Web 的请求。
那么,我有什么办法可以在 PHP 中实现这一点吗?当然,Python/Java我都可以,但是我的水平都不是那么好。
php - autoload.php 问题:无法打开流:没有这样的文件或目录
我是 PHP 新手,并试图找出 autoload.php 的问题。我下载了 php-amqplib 包及其依赖项并尝试测试 PHP 页面。我无法打开流:没有这样的文件或目录 'D:\inetpub\wwwroot\test\vendor\videlalvaro\php-amqplib\demo/../vendor/autoload.php' (include_path='.;C: \php\梨')。我使用的是 5.3.13,它安装在 'D:\PHP5313' 文件夹中。没有“梨”文件夹。如果我遗漏了什么,你能告诉我吗?感谢您的任何建议。
自动加载.php
php - 怎么拖延?- php-amqplib
我想知道如何使用 Amqpphplib 进行延迟。
我使用了这个很棒的咖啡脚本教程:
https://github.com/jamescarr/rabbitmq-scheduled-delivery
但它似乎不适用于 PHP-amqplib。
该消息如我所愿过期,但似乎“x-dead-letter-exchange”不起作用。我使用了 RabbitMQ 管理控制台,我可以实时看到所有队列的创建和删除。但是我的消息在过期后确实会进入即时队列。我使用 RabbitMQ 3.2.3 版本,PHP-amqplib 2.2.* 版本。
这是我的代码:
连接类:
发布代码
消费者代码
php - php-amqp 中的“套接字错误:无法连接到主机”异常
我编写了一个函数来检查rabbitmq 是否正在运行。
我的代码捕获了这个异常。我在日志中看到下面 -
但是我的 rabbitmq 服务器正在运行,那么为什么会出现这个异常?我正在使用v3.1.1
rabbitmq-server。
php - RabbitMQ - 生产者和消费者之间的持续连接
我有一个问题 - 如何保持消费者和生产者之间的持续联系?
我的意思是当生产者发送消息时 - 如果我使用 rpc 过程并且连接将关闭,消费者会处理它并使用回调队列发回。
现在我希望消费者和生产者之间的连接应该打开。如何做到这一点?
谢谢
php - RabbitMQ PHP 用于动态消息更新
我正在学习 RabbitMQ,并考虑使用它为用户提供“动态消息”更新,就像 facebook 提供来自朋友的动态消息一样。
我的想法是:
每当创建用户时,我将创建一个名称为用户的 userId 的队列,因此队列名称可以是“
100_message_queue
”(userId_message_queue)。生产者将推送此队列中的所有更新。
从客户端(javascript),它将调用像 "
GET http://example.com/getliveupdates/100
" 这样的 REST API,然后我将从中获取所有新更新100_message_queue
并将其作为响应发送。
我阅读了 RabbitMQ php 教程,但无法弄清楚这怎么可能?此外,消费者永远运行,所以我似乎无法发出任何 REST 请求。它给了我超时。
知道如何实现这种结构吗?
谢谢
php - 如何在网络浏览器上使用 php-amqplib rabbitMQ
我正在尝试使用 php-amqplib 发送和接收消息。它可以在终端上发送/接收。但是当使用网络浏览器时,无法从队列中接收它会不断等待消息。我用下面的代码来接收.php
如果我使用下面而不是回调函数,它会从队列中获取第一条消息,但不从队列中消耗
这意味着消息在队列“test22”中可用。给我任何线索。