2010-02-06 36 views
7

Tôi đang tìm cách triển khai RabbitMQ vào ứng dụng PHP của mình và đang sử dụng phần mở rộng php-amqp. Câu hỏi duy nhất của tôi là điều này, làm thế nào để tôi dễ dàng truy vấn để trả về nội dung của hàng đợi trong PHP?Truy xuất thư từ hàng đợi RabbitMQ

php-amqp dường như không cho phép tôi thực hiện việc này. Nếu tôi đi sai, xin hãy giúp tôi ra khỏi đây :)

Trả lời

2

James, bạn có thể hỏi câu hỏi này trên thảo luận về thỏ không? Câu hỏi của bạn chạm vào ý nghĩa của việc 'truy vấn' một hàng đợi để nhận tin nhắn. Trong RabbitMQ, bạn tiêu thụ tin nhắn từ hàng đợi và thực hiện lọc bằng cách sử dụng các kết buộc hàng đợi. Hãy nhìn vào giới thiệu này - http://blogs.digitar.com/jjww/2009/01/rabbits-and-warrens/

Cheers

alexis RabbitMQ

2

Nếu bạn cần phải biết bao nhiêu tin nhắn trong một hàng đợi, bạn có thể nhận được thông tin này khi bạn khai báo hàng đợi, hoặc nếu bạn sử dụng basic.get để truy xuất một thư. Thông thường, người nhận thư sẽ sử dụng basic.consume và họ sẽ không biết số lượng thư đang chờ.

0

Loại câu hỏi như vậy là nhiều hơn về queue data type và khái niệm AMQP chung.

Trong AMQP (và trong RabbitMQ, đó là hàng đợi tương thích AMQP) hàng đợi là hàng đợi FIFO điển hình. Hàng đợi không phải là loại dữ liệu thường được sử dụng để truy cập các mục tùy ý và RabbitMQ tại thời điểm này không cung cấp bất kỳ cách nào để bỏ qua khái niệm FIFO và cho phép loại truy cập đó. Ít nhất là ra khỏi hộp. Có thể có bất kỳ plugin của bên thứ ba nào, nhưng tôi không biết bất kỳ loại plugin nào như vậy. Và một lần nữa, nó sẽ làm hỏng toàn bộ khái niệm FIFO và nó chỉ trở thành một số redis mới hoặc bất cứ điều gì, thậm chí không nói về tác động hiệu suất (người ta có thể kiểm tra độ phức tạp của hoạt động cấu trúc dữ liệu phổ biến, thậm chí Q & A trên SO - What are the time complexities of various data structures?. thêm quyền truy cập tùy ý không phải là mục tiêu của AMQP hoặc bất kỳ nhà môi giới tương thích AMQP nào quan tâm đến hiệu suất).

Hầu hết các câu hỏi về truy cập hàng đợi tùy ý đến khi hàng đợi được đưa vào ngữ cảnh sai: có thể là trường hợp khái niệm xếp hàng không phù hợp với kiến ​​trúc hiện tại hoặc mong muốn và khi lưu trữ một số khóa-giá trị hoặc cơ sở dữ liệu tốt hơn.

Các vấn đề liên quan