5

ローカルの beanstalkd サーバーを使用するように構成を設定しました。

'beanstalkd' => array(
    'driver' => 'beanstalkd',
    'host'   => 'localhost',
    'queue'  => 'default',
)

ジョブを別の beanstalkd サーバーにプッシュするにはどうすればよいですか?

Queue::push(function($job)
{
  // This pushes to local beanstalkd
});

Queue::pushToRemoteBeanstalkdInstance(function($job)
{
  // ?
});
4

1 に答える 1

19

キュー構成ファイルに追加の構成を作成する必要があるため、次のようになります。

'connections' => array(

    'beanstalkd' => array(
        'driver' => 'beanstalkd',
        'host'   => 'localhost',
        'queue'  => 'default',
    ),

    'beanstalkd_remote' => array(
        'driver' => 'beanstalkd',
        'host'   => 'remotehost',
        'queue'  => 'default',
    )
)

デフォルトが「beanstalkd」に設定されている場合は、通常の方法で呼び出し続けることができます。

リモート キューを使用する場合は、次のように呼び出しで接続を定義するだけです。

Queue::connection('beanstalkd_remote')->push(function($job)
{
    // This pushes to remote beanstalkd
});
于 2013-07-05T09:02:41.353 に答える