Download the PHP package averinuveren2/lumen-pubsub without Composer
On this page you can find all versions of the php package averinuveren2/lumen-pubsub. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download averinuveren2/lumen-pubsub
More information about averinuveren2/lumen-pubsub
Files in averinuveren2/lumen-pubsub
Package lumen-pubsub
Short Description A Pub-Sub abstraction for Lumen
License MIT
Informations about the package lumen-pubsub
Lumen-pubsub
A Pub-Sub abstraction for lumen.
The following adapters are supported:
- Local
- /dev/null
- Redis
- Kafka (see separate installation instructions below)
- Google Cloud
- HTTP
Installation
Register the service provider in app.php
Register the facade in app.php
The package has a default configuration which uses the following environment variables.
You can then edit the generated config at app/config/pubsub.php
.
Kafka Adapter Requirements
-
Install librdkafka c library
-
Install the php-rdkafka PECL extension
- Add the following to your php.ini file to enable the php-rdkafka extension
extension=rdkafka.so
Usage
Creating a Subscriber
The package includes a helper command php artisan make:subscriber MyExampleSubscriber
to stub new subscriber command classes.
A lot of pub-sub adapters will contain blocking subscribe()
calls, so these commands are best run as daemons running
as a supervisor process.
This generator command will create the file app/Console/Commands/MyExampleSubscriber.php
which will contain:
Kafka Subscribers
For subscribers which use the php-pubsub-kafka
adapter, you'll likely want to change the consumer_group_id
per
subscriber.
To do this, you need to use the PubSubConnectionFactory
to create a new connection per subscriber. This is because
the consumer_group_id
cannot be changed once a connection is created.
Here is an example of how you can do this:
Adding a Custom Driver
Please see the php-pubsub documentation Writing an Adapter.
To include your custom driver, you can call the extend()
function.
All versions of lumen-pubsub with dependencies
illuminate/support Version ^6.0
superbalist/php-pubsub Version ^1.0|^2.0
superbalist/php-pubsub-redis Version ^1.0|^2.0
superbalist/php-pubsub-google-cloud Version ^5.0
illuminate/console Version ^6.0
superbalist/php-pubsub-http Version ^1.0
superbalist/php-pubsub-kafka Version ^2.0