php 一次性发送大量短信 , 可能有好几千 , 有没有必要用 rabbitmq , 具体什么流程 ?

php 一次性发送大量短信 , 可能有好几千 , 有没有必要用 rabbitmq , 具体什么流程 ?

阅读 4.3k
7 个回答

看业务需求
若消息不可丢,则可使用rabbitMQ
若消息可丢弃,则直接使用redis->list

消费:
可使用crontab定时消费
可写个脚本,再搭配supervisor,实时消费

经常好几千好几千的发 还是需要的 。rabbitmq有点重 看看beanstalkd吧

看三方支持的量和接收的并发限制,流量限制
有的话用 RabbitMQ 会方便些

一次发这么多的话,一般还是搞个队列缓冲下,然后再异步消化队列里面的数据,不然同步发送消息,体检太差了。队列的话,PHP自带的数组也成,用第三方的MQ也可以,原理是一样的,队列缓冲,异步消费发布,只是看你怎么设计这个系统和优化了。

可以上,但是简单业务逻辑的话,redis的队列也可以处理。

新手上路,请多包涵

首先你的需求是一次性的还是长期的,如果是一次性的其实没必要,无端增加了链路和复杂度,其次要看你的需求对时间的一致性怎么要求,要在短时间内发完,还是可以满满发,不同的业务场景需要考虑的地方不一样,如果是要求不高,那直接写个php脚本跑就行,记得分页和监控一下内存使用避免溢出,必要时加写断点

Redis 列表类型即可,关键词:lpushrpop (左进右边,反之亦可)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题