最适合入门的兵棋游戏(最适合入门的RabbitMQ+PHP教程发布与订阅!)

wufei123 发布于 2023-10-12 阅读(642)

菜鸟教程php在线编辑器

上一章我们举例说明了rabbitmq的简单使用,即是生产者发一条消息,消费者则消费掉这个消息,一对一的去处理那么这章节我们看下rabbitmq的发布与订阅,童鞋们可能最直接想到资源网的是redis的发布与订阅消息。

看官方案例提到的,我们使用的是一个日志系统,即一个生产者发布一条消息,传给更多地消费者使用为了说明这种模式,我们将构建一个简单的日志记录系统它将包含两个程序 - 第一个资源网将发出日志消息,第二个将接收和打印它们。

2.注意事项(1)生产者是用来生产消息发送出消息的应用程序(2)消息队列是存储消息的缓冲器(3)消费者是接受发送的应用程序(4)RabbitMQ中消息传递模型的资源网核心思想是生产者永远不会将任何消息直接发送到队列。

有时候生产者通常甚至不知道消息是否会被传递到任何队列3.使用交换机发送消费消息(使用fanout类型)它可以将自己接收到的所有消息广播到它知道的所有队资源网列中。

4.交换机与队列之绑定上一章我们是直接生成者直接生产消息丢出去,并不知道丢到了哪里,而消费者则是直接读取消息,并不知道消息来源于哪里有的时候我们需要指定从某一个队列里面拿到消息并要在生产者和消费资源网者之间共享队列时,我们就需要指定一下消息发出到接受地。

进而出现了交换机来帮助处理,我们创建一个fanout类型的交换机和一个队列,然后就需要告诉交换机将消息发送到我们指定的队列里,这就形成了一个绑定关资源网系(也可以称为指定)。

这样的话,交换机就会吧消息附件到我们的队列里下面是发布消息绑定队列以后的信息图(分别执行):php receive_log.php 和 php receive.php 和 php资源网 product_log.php。

总结:虽然订阅与发布跟上面两章接的几乎一样,但是我们将消息从一个无名交换机发布到指定的交换机上,同时也可以使用同一个交换机发布到不同的队列上让消费者消费若果队列没有绑资源网定交换机上,消息会出现丢失问题初级教程就把代码按章节推送到 github 上供童鞋们参考:

链接在这里: https://github.com/orchid-lyy/rabbitmq-study

亲爱的读资源网者们,感谢您花时间阅读本文。如果您对本文有任何疑问或建议,请随时联系我。我非常乐意与您交流。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。