-
老是执行不完,有的时候不报错,有的是报错
可能存在的一种情况,仅供参考:
1,传参的时候传了对象,laravel队列经常需要序列化,如果直接传对象进去,这个对象又偏大,就可能出现标题所说的问题,可以在传参的时候传对象ID,运行队列的时候再通过ID读取对象
2, 查看是不是又多个laravel项目, 并且都使用了redis之类的缓存, 以redis为例, 是不是都使用了同样的DB, 假如项目A用了DB 1,2,项目B也用了DB 1,2 然后AB的队列都在后台监听. 然后就可能出现, 在A项目里面想要调用的队列不运行, 停掉队列又发现写进缓存了, 因为被B项目的队列监听到了, 然后B去运行了A的队列

本文探讨了在使用Laravel队列时遇到的执行不结束和错误问题。可能的原因包括:直接传递大型对象导致序列化问题,以及多个项目共用Redis缓存时的冲突。建议在传递参数时使用对象ID,并在运行队列时根据ID获取对象,同时检查并区分不同项目间的缓存设置,避免队列监听混乱。
865

被折叠的 条评论
为什么被折叠?



