Download the PHP package leroy-merlin-br/laravel-pubsub without Composer
On this page you can find all versions of the php package leroy-merlin-br/laravel-pubsub. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download leroy-merlin-br/laravel-pubsub
More information about leroy-merlin-br/laravel-pubsub
Files in leroy-merlin-br/laravel-pubsub
Package laravel-pubsub
Short Description A Pub-Sub abstraction for Laravel
License MIT
Informations about the package laravel-pubsub
laravel-pubsub
A Pub-Sub abstraction for Laravel. forked from Entanet/laravel-pubsub
This package is a wrapper bridging php-pubsub into Laravel.
For Laravel 4 support, use the package https://github.com/Superbalist/laravel4-pubsub
Please note that Laravel 5.3 is only supported up until version 2.0.2.
2.0.3+ supports Laravel 5.4 and up moving forward.
6.0.0 supports Laravel 8.x.
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.
If the KAFKA_SECURITY_PROTOCOL is set to either "SASL_SSL" or "SASL_PLAINTEXT", the credentials stored in KAFKA_SASL_USERNAME & KAFKA_SASL_PASSWORD will be used to authenticate with the kafka server / cluster.
To customize the configuration file, publish the package configuration using Artisan.
You can then edit the generated config at app/config/pubsub.php
.
Kafka Adapter Installation
Please note that whilst the package is bundled with support for the php-pubsub-kafka adapter, the adapter is not included by default.
This is because the KafkaPubSubAdapter has an external dependency on the librdkafka c library
and the php-rdkafka
PECL extension.
If you plan on using this adapter, you will need to install these dependencies by following these installation instructions.
You can then include the adapter using:
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 laravel-pubsub with dependencies
ext-json Version *
google/cloud Version ^0.150.0
guzzlehttp/guzzle Version ^7.2
illuminate/console Version ^8.0
illuminate/support Version ^8.0
predis/predis Version ^1.1