PHP code example of s008nyx / kafka-bus
1. Go to this page and download the library: Download s008nyx/kafka-bus library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
s008nyx / kafka-bus example snippets
$app->configure('kafka-bus');
$app->register(\KafkaBus\KafkaBusServiceProvider::class);
use KafkaBus\Error;
use KafkaBus\KafkaHandler;
use RdKafka\Message;
class MyHandler implements KafkaHandler
{
/**
* Topics list
* @return array
*/
public function getTopics(): array
{
return ['myTopic'];
}
/**
* Processing success message
* @param Message $message
* @return bool
*/
public function process(Message $message): bool
{
// Do something
}
/**
* Processing fail message
* @param Error $error
* @return bool
*/
public function error(Error $error): bool
{
// Do something
}
}
namespace App\Console\Commands;
use KafkaBus\Consumer;
use Illuminate\Console\Command;
class KafkaConsumer extends Command
{
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'kafka:consume';
/**
* @param Consumer $consumer
*/
public function handle(Consumer $consumer)
{
try {
$consumer->consume(new MyHandler());
} catch (\Exception $e) {
$this->error($e->getMessage());
}
}
}
shell
php artisan kafka:consume