drymek / pheanstalk-bundle
此包已被废弃且不再维护。未建议替代包。
此包的最新版本(dev-master)没有可用的许可证信息。
适用于 Symfony2 的 pheanstalk-bundle
dev-master
2013-10-08 21:32 UTC
Requires
- php: >=5.3.1
- mrpoundsign/pheanstalk-5.3: *
- symfony/event-dispatcher: *
- symfony/symfony: >=2.1.0
This package is not auto-updated.
Last update: 2019-02-20 17:16:28 UTC
README
Pheanstalk bundle 是一个简单且易于使用 Pheanstalk2(Pheanstalk 的命名空间版本)与 Symfony2 应用程序的工具。它提供了一些有用的工具。
安装
deps
[Pheanstalk]
git=https://github.com/mrpoundsign/pheanstalk.git
target=/pheanstalk
[drymekPheanstalkBundle]
git=https://github.com/drymek/PheanstalkBundle.git
target=/bundles/drymek/PheanstalkBundle
app/AppKernel.php
if (in_array($this->getEnvironment(), array('dev', 'test'))) {
// (...)
$bundles[] = new drymek\PheanstalkBundle\drymekPheanstalkBundle();
}
app/autoload.php
$loader->registerNamespaces(array(
// (...)
'Pheanstalk' => __DIR__.'/../vendor/pheanstalk/classes',
'drymek' => __DIR__.'/../vendor/bundles',
));
app/config/config.yml
仅使用默认设置(服务器 127.0.0.1,端口 11300,超时 3 秒)
drymek_pheanstalk: ~
要配置任何或所有设置,只需添加您想要的即可
drymek_pheanstalk:
server: YOUR_SERVER
port: YOUR_SERVER_PORT
timeout: YOUR_CONNECTION_TIMEOUT_VALUE_IN_SECONDS
服务
获取用于工作的 Pheanstalk 对象
$this->get('pheanstalk');
开发者工具
将其添加到 app/config/routing_dev.yml 中
_pheanstalk:
resource: "@drymekPheanstalkBundle/Resources/config/routing.yml"
prefix: /_pheanstalk
开发者工具功能
- 列出管道
- 创建管道
- 列出管道的工作
- 删除工作
- 将新工作放入管道
使用示例
$pheanstalk = $this->get('pheanstalk');
// ----------------------------------------
// producer (queues jobs)
$pheanstalk
->useTube('testtube')
->put("job payload goes here\n");
// ----------------------------------------
// worker (performs jobs)
$job = $pheanstalk
->watch('testtube')
->ignore('default')
->reserve();
echo $job->getData();
$pheanstalk->delete($job);