Вопрос

Я хочу внедрить RabbitMQ в свое приложение PHP и использую расширение PHP-AMQP. Мой единственный вопрос: как мне легко запросить, чтобы вернуть содержимое очереди в PHP?

PHP-AMQP, кажется, не позволяет мне сделать это. Если я ошибаюсь, пожалуйста, помогите мне здесь :)

Это было полезно?

Решение

Джеймс, не могли бы вы задать этот вопрос о Rabbitmq-Discuss? Ваш вопрос касается того, что значит «запросить» очередь, чтобы получить сообщения. В Rabbitmq вы потребляете сообщения из очередей и выполняете фильтрацию с помощью привязки очереди. Посмотрите на это вступление - http://blogs.digitar.com/jjww/2009/01/rabbits-and-warrens/

Ваше здоровье

Alexis Rabbitmq

Другие советы

Если вам нужно знать, сколько сообщений находится в очереди, вы можете получить эту информацию, когда вы объявляете очередь, или если вы используете basic.get Чтобы получить одно сообщение. Обычно получатели сообщений будут использовать basic.consume И они не будут знать, сколько сообщений ждет.

Такой вид вопросов больше Тип данных очереди и общая концепция AMQP.

В amqp (и в rabbitmq, который является AMQP-совместимым брокером), являются типичными очередями FIFO. Очередь - это не тот тип типов данных, которые обычно используются для доступа к произвольным элементам и RabbitMQ в настоящее время, не дает никакого способа обойти концепцию FIFO и допускает такой вид доступа. По крайней мере, из коробки. Могут быть какие-либо сторонние плагины, но я не знаю ни одного такого рода. И еще раз, это разрушит целую концепцию FIFO, и она станет просто новой Redis или чем -то еще, даже не говорит о воздействии на производительность (можно проверить сложность операции общих структур данных, даже этот Q & A на SO - SO - Каковы временные сложности различных структур данных? Дает краткое представление, почему добавление произвольного доступа не является целью AMQP или любого, совместимого с AMQP, который заботится о производительности).

Большинство вопросов о произвольном доступе к очереди возникают, когда очереди помещаются в неправильный контекст: это может быть случай, когда концепция очереди просто не соответствует текущей или желающей архитектуре и когда некоторые ключевые значения или кулак базы данных.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top