Synchronous AMQP from PHP

Can PHP treat AMQP like an RPC service, and send a message and block until a reply is returned? Are there any good examples of this, and do any libraries wrap such functionality up in an easy-to-use way?

I'd like to have the flexibility of a brokered messaging system, but shield the web tier from needing to know about its asynchronous nature.


Sure, absolutely. Look at how an RPC-style request flows around a system:

  • A request is issued
  • The requester now blocks waiting for a reply to that request
  • That's completely implementable with an asynchronous message system like AMQP. You just need to do the RPC correlation yourself:

  • Send your request within an asynchronous message with a unique ID within it (this does not block)
  • Receive messages from the messaging system and block until you get a message back with the same unique ID (that means you've just received your reply)
  • RabbitMQ, an AMQP broker, offers documentation online on how to do exactly this.

    链接地址: http://www.djcxy.com/p/61216.html

    上一篇: MassTransit与RabbitMQ:MT超时第二个请求/响应

    下一篇: 来自PHP的同步AMQP