PHPackages                             slickdeals/gearman-messenger - 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. [Queues &amp; Workers](/categories/queues)
4. /
5. slickdeals/gearman-messenger

ActiveLibrary[Queues &amp; Workers](/categories/queues)

slickdeals/gearman-messenger
============================

Symfony Gearman Messenger Bridge

v1.1.1(3y ago)311.0k↓23.9%3[1 PRs](https://github.com/Slickdeals/gearman-messenger/pulls)MITPHPPHP &gt;=7.2.5

Since Apr 14Pushed 1y ago15 watchersCompare

[ Source](https://github.com/Slickdeals/gearman-messenger)[ Packagist](https://packagist.org/packages/slickdeals/gearman-messenger)[ RSS](/packages/slickdeals-gearman-messenger/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (5)Versions (7)Used By (0)

Gearman Messenger
=================

[](#gearman-messenger)

Provides Gearman integration for Symfony Messenger.

[![Build gearman-messenger](https://github.com/Slickdeals/gearman-messenger/actions/workflows/php.yml/badge.svg)](https://github.com/Slickdeals/gearman-messenger/actions/workflows/php.yml)

Installation
------------

[](#installation)

```
composer require slickdeals/gearman-messenger
```

Usage
-----

[](#usage)

You will need to add a service to create the transport factory.

```
# config/services.yaml
services:
    SD\Gearman\Transport\GearmanTransportFactory:
        tags: [ messenger.transport_factory ]
```

To configure the transport, you'll need to provide a DSN with host, port, and job names. You can specify multiple job names to allow the transport to pull work from multiple Gearman job queues. Routing of messages to handlers in Messenger will still be based on what workload is decoded.

KeyDefault Valuehostlocalhostport4730job\_names\[\]defaulttimeout100 (milliseconds)```
framework:
    messenger:
        transports:
            gearman:
                # DSN will use defaults
                dsn: "gearman://"
                # dsn: 'gearman://:?job_names[]=&timeout=100'
```

This allows you to have a single transport will support all of your messages, but it does not prevent you from setting up multiple transports that each handle their own set of messages.

### Specify Multiple Hosts

[](#specify-multiple-hosts)

You can also pass an array of host:port strings as an option to connect to multiple Gearman Job Servers. Keep the DSN simple as the DSN overrides options.

```
framework:
    messenger:
        transports:
            gearman:
                dsn: "gearman://"
                options:
                    hosts:
                        - gearman1:4730
                        - gearman2:4730
                        # ...
```

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance28

Infrequent updates — may be unmaintained

Popularity30

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 95.7% 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 ~142 days

Total

4

Last Release

1433d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/2c73d11343c138758bb7d38713acf8f74c85998f2665cb0e7d73a8d13d3e7825?d=identicon)[bfeaver](/maintainers/bfeaver)

---

Top Contributors

[![bfeaver](https://avatars.githubusercontent.com/u/441396?v=4)](https://github.com/bfeaver "bfeaver (22 commits)")[![sd-ryan](https://avatars.githubusercontent.com/u/86621226?v=4)](https://github.com/sd-ryan "sd-ryan (1 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPsalm

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/slickdeals-gearman-messenger/health.svg)

```
[![Health](https://phpackages.com/badges/slickdeals-gearman-messenger/health.svg)](https://phpackages.com/packages/slickdeals-gearman-messenger)
```

###  Alternatives

[symfony/doctrine-messenger

Symfony Doctrine Messenger Bridge

53186.7M156](/packages/symfony-doctrine-messenger)[symfony/amqp-messenger

Symfony AMQP extension Messenger Bridge

29555.6M59](/packages/symfony-amqp-messenger)[symfony/redis-messenger

Symfony Redis extension Messenger Bridge

21846.4M33](/packages/symfony-redis-messenger)[symfony/amazon-sqs-messenger

Symfony Amazon SQS extension Messenger Bridge

4612.5M15](/packages/symfony-amazon-sqs-messenger)[zenstruck/messenger-monitor-bundle

Batteries included UI to monitor your Messenger workers, transports, schedules, and messages.

261561.9k5](/packages/zenstruck-messenger-monitor-bundle)[koco/messenger-kafka

Symfony Messenger Kafka Transport

931.1M1](/packages/koco-messenger-kafka)

PHPackages © 2026

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