PHPackages                             buqiu/kafka - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. buqiu/kafka

ActiveLibrary

buqiu/kafka
===========

Kafka distributed publish subscribe message system extension package.

v2.1.0(2y ago)03.9k↓45.5%MITPHPPHP ^8.1

Since Mar 7Pushed 2y ago1 watchersCompare

[ Source](https://github.com/buqiu/laravel-kafka)[ Packagist](https://packagist.org/packages/buqiu/kafka)[ RSS](/packages/buqiu-kafka/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (6)Dependencies (2)Versions (9)Used By (0)

kafka
=====

[](#kafka)

介绍
--

[](#介绍)

Kafka 分布式发布订阅消息系统扩展包。

环境
--

[](#环境)

```
php >= 8.1
composer >= 2.0

```

扩展
--

[](#扩展)

```
RdKafka 自行安装php扩展

```

使用
--

[](#使用)

### 1.安装

[](#1安装)

```
composer require buqiu/kafka
```

### 2.发布 ***kafka.php*** 配置文件

[](#2发布-kafkaphp-配置文件)

```
php artisan vendor:publish --tag=buqiu-kafka-config
```

### 3.修改 config/queue.php 文件，在 ***connections*** 数组中追加 ***kafka*** 配置信息

[](#3修改-configqueuephp-文件在-connections-数组中追加-kafka-配置信息)

```
'kafka' => [
            'driver' => 'kafka',
            'queue' => env('KAFKA_TOPIC'),
        ],
```

### 4.配置 .env 文件

[](#4配置-env-文件)

```
KAFKA_BROKERS=服务地址
KAFKA_SECURITY_PROTOCOL=SASL_SSL
KAFKA_SASL_MECHANISMS=PLAIN
KAFKA_SASL_USERNAME=用户名
KAFKA_SASL_PASSWORD=密码
KAFKA_DEBUG=false
KAFKA_TOPIC=自定义的 Topic
KAFKA_CONSUMER_GROUP_ID=自定义的 Group ID
```

### 5.启动 kafka 队列监听

[](#5启动-kafka-队列监听)

```
php artisan queue:work kafka
```

### 6.代码示例

[](#6代码示例)

#### 6.1 修改 .env 文件设置默认队列连接

[](#61-修改-env-文件设置默认队列连接)

.env

```
QUEUE_CONNECTION=kafka
```

php 代码中使用

```
KafkaJob::dispatch()->onQueue('default');
```

#### 6.2 不修改 .env 默认队列连接，手动指定连接

[](#62-不修改-env-默认队列连接手动指定连接)

方式一：调用处动态指定

```
KafkaJob::dispatch()->onQueue('default')->onConnection('kafka');
```

方式二、KafkaJob 中指定连接属性（推荐）

```
public function __construct()
{
    $this->onConnection('kafka');
}
```

###  Health Score

30

—

LowBetter than 64% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity20

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 75% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~27 days

Recently: every ~47 days

Total

8

Last Release

968d ago

Major Versions

v1.0.3 → 2.0.0.x-dev2023-03-13

### Community

Maintainers

![](https://www.gravatar.com/avatar/97229ae0e947eeff418e092a036e90d81654fb9a640281ed22438ec5685bc22b?d=identicon)[buqiu](/maintainers/buqiu)

---

Top Contributors

[![smallk1002](https://avatars.githubusercontent.com/u/36835076?v=4)](https://github.com/smallk1002 "smallk1002 (3 commits)")[![buqiu](https://avatars.githubusercontent.com/u/7991121?v=4)](https://github.com/buqiu "buqiu (1 commits)")

---

Tags

laravelkafkabuqiu

### Embed Badge

![Health badge](/badges/buqiu-kafka/health.svg)

```
[![Health](https://phpackages.com/badges/buqiu-kafka/health.svg)](https://phpackages.com/packages/buqiu-kafka)
```

###  Alternatives

[anourvalar/eloquent-serialize

Laravel Query Builder (Eloquent) serialization

11320.2M21](/packages/anourvalar-eloquent-serialize)[api-platform/laravel

API Platform support for Laravel

59126.4k5](/packages/api-platform-laravel)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
