Download the PHP package nexus-actors/messenger-console-swoole without Composer
On this page you can find all versions of the php package nexus-actors/messenger-console-swoole. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download nexus-actors/messenger-console-swoole
More information about nexus-actors/messenger-console-swoole
Files in nexus-actors/messenger-console-swoole
Package messenger-console-swoole
Short Description Nexus messenger console Swoole adapter — threaded consume command over the Swoole worker pool.
License MIT
Informations about the package messenger-console-swoole
nexus-messenger-console-swoole
Threaded Symfony Console runner for the Swoole worker pool.
Adds the nexus:messenger:consume-threads command: boots N Swoole worker threads, each with its own ActorSystem, SwooleRuntime, and a fresh transport connection (via ThreadedConsumerBootstrap::receiver()). The broker naturally load-balances across threads.
Install
Requires PHP 8.5.7+, ext-swoole >= 6.2.1, and a Swoole build with thread support (--enable-swoole-thread).
Usage
1. Implement ThreadedConsumerBootstrap
2. Register the command
3. Run
Key concepts
Per-thread semantics: All limit options (--limit, --memory-limit, --time-limit) are evaluated per thread. Each thread has its own LifecycleWatchdog. Setting --limit=1000 on a 4-thread pool means each thread processes up to 1000 messages before recycling — not 1000 total.
Fresh transport per thread: ThreadedConsumerBootstrap::receiver() is called inside each thread. Return a new connection object every time — never share a connection created on the main thread.
Signal handling: The main thread blocks in Swoole\Thread\Pool::start(). SIGTERM stops the pool; each worker thread shuts down its ActorSystem cleanly. Use a process manager (systemd, supervisord, Docker) to control the worker lifecycle.
See also
- nexus-messenger-console — single-threaded
FiberRuntimerunner - nexus-worker-pool-swoole — underlying thread pool
- nexus-messenger — transport bridge and
MessengerBridgefacade
Repository
Read-only subtree split of nexus-actors/nexus. Report issues and send pull requests to the monorepo — this repository only receives automated pushes and release tags.
All versions of messenger-console-swoole with dependencies
ext-swoole Version >=6.2.1
nexus-actors/core Version ^0.1
nexus-actors/messenger Version ^0.1
nexus-actors/messenger-console Version ^0.1
nexus-actors/runtime Version ^0.1
nexus-actors/runtime-swoole Version ^0.1
nexus-actors/worker-pool Version ^0.1
nexus-actors/worker-pool-swoole Version ^0.1
opis/closure Version ^4.0
symfony/console Version ^7.4 || ^8.0
symfony/messenger Version ^7.4 || ^8.0