关于rabbitmq的四连问

rabbitmq的消费者触发,是需要写一个脚本或者定时任务去轮询触发吗? 可不可以这样,每当生产者生产消息后,消费者能够自动去消费?
或者PHP压根就不支持消费者自主触发?
如果定时轮询的话,一般设置多长时间?
由于没有接触过,对rabbmit的认知非常浅薄,网上关于rabbmq的知识非常少,很多博客都是搬运.
如果有对这方面了解的大哥,希望不吝赐教

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 7

一般用写一个常驻进程进行消费,rabbitmq 官网有 例子 可以查看,想详细学习可以在b站找java的视频看,基础包的使用方法基本一致(连方法名、参数名甚至参数顺序都是一样的)

1个月前 评论

laravel的话应该有listener吧 项目启动的时候启动listener就可以了

1个月前 评论
while(true) {
  if (empty(xx)) {
    sleep(1);
  }
  // 业务,不空就一直消费
}
1个月前 评论

mq 有官方的client包。 你不需要关心睡眠的问题。 你只需要处理好平滑重启就行。

1个月前 评论

这块属于多进程开发 主要的目的就是常驻内存 挂载一个进程才能进行一个监听 因为你得让这个php执行完不结束 那么就得一直运行 开启一个while循环这是一种方式 可以在终端 php index.php 一直跑下去

  • 可以单独用swoole 启动一个进程 进行一个堵塞wait函数 也就是相当于while循环 接收到消息才会跑 运行方式也是 php index.php 命令跑
  • 直接用php文件写一个 楼上那个while循环用php-fpm终端里面 运行方式也是 php index.php 命令跑跑while循环 也可以进程不死 不过进程会不会挂这个就没试过了守护下
1个月前 评论
y1415181920 (作者) 1个月前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!