首页 > 解决方案 > 在同一台服务器上分离 beanstalkd 队列

问题描述

我有一个使用 Beanstalk 作为队列驱动程序的生产 Laravel 网站。

现在,我被要求在同一台服务器上制作一个临时网站,具有与生产网站相同的功能。

我担心队列和计划任务。据我所知,服务器上有一个 beanstalkd 进程。如果我开始从登台服务器向队列中添加东西,那么我担心生产服务器中的计划任务会选择它并执行排队的操作(其中一些可能非常棘手,例如向用户计费)。

登台服务器需要拥有来自生产的真实数据库才能有意义,包括真实的成员数据。

如何设置暂存 Laravel 应用程序在这方面不与生产冲突,但拥有相同的数据库?

标签: laravelqueuebeanstalkd

解决方案


您可以使用不同的默认管设置两个连接,并且基于 ENV,您可以将消息发送到不同的管。

或者您有一个连接,但您指定了不同的管。这样一来,您就有了一组用于直播的管子,另一组用于开发。

在此处查看一些指导: https ://laracasts.com/discuss/channels/general-discussion/queue-with-two-tubes

和: https ://fideloper.com/ubuntu-beanstalkd-and-laravel4


推荐阅读