fhteam/laravel-amqp
Composer 安装命令:
composer require fhteam/laravel-amqp
包简介
AMQP library driver for Laravel Queue
README 文档
README
AMQP driver for Laravel queue. This driver uses popular AMQPLib for PHP: https://github.com/videlalvaro/php-amqplib (This library is a pure PHP implementation of the AMQP protocol so it may be used to connect to a number of queue managers around)
Installation
Please do note, that package name has changed to fhteam/laravel-amqp. Old name should still work, though it will not be maintained.
- Simple composer installation is ok:
composer require fhteam/laravel-amqp:~1.0(set version requirement to your favourite) - Note, that mbstring and bcmath extensions are required for php-amqplib to work properly. The first is not yet listed in library's composer.json (php-amqplib/php-amqplib#229)
Configuration
In your config/queue.php file you have to provide the following:
'default' => 'amqp', 'connections' => array( 'amqp' => array( 'driver' => 'amqp', 'host' => 'localhost', 'port' => '5672', 'user' => 'guest', 'password' => 'guest', 'vhost' => '/', 'queue' => null, 'queue_flags' => ['durable' => true, 'routing_key' => null], //Durable queue (survives server crash) 'declare_queues' => true, //If we need to declare queues each time before sending a message. If not, you will have to declare them manually elsewhere 'message_properties' => ['delivery_mode' => 2], //Persistent messages (survives server crash) 'channel_id' => null, 'exchange_name' => null, 'exchange_type' => null, 'exchange_flags' => null, 'keepalive' > false, 'heartbeat' => 0, 'retry_after' => 0, ), ),
In your config/app.php add 'Forumhouse\LaravelAmqp\ServiceProvider\LaravelAmqpServiceProvider' to the list of service
providers registered.
Improved worker stability (PHP 7.1+ is required)
For better stability please add following code in app/Exceptions/Handler.php:
class Handler extends ExceptionHandler {
to
class Handler extends ExceptionHandler { use AMQPFailureDetector;
And
public function report(Exception $exception) { parent::report($exception); }
to
public function report(Exception $exception) { $this->catchAMQPConnectionFailure($exception); parent::report($exception); }
Usage
To find out how to use Laravel Queues, please refer to the following official documentation: http://laravel.com/docs/queues
fhteam/laravel-amqp 适用场景与选型建议
fhteam/laravel-amqp 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 17.7k 次下载、GitHub Stars 达 28, 最近一次更新时间为 2015 年 03 月 04 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 fhteam/laravel-amqp 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 fhteam/laravel-amqp 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 17.7k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 29
- 点击次数: 7
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: GPL-2.0
- 更新时间: 2015-03-04