automa.net/eventbus

1.1 2024-08-26 18:07 UTC

This package is auto-updated.

Last update: 2024-09-26 18:25:40 UTC


README

Latest Stable Version Latest Unstable Version License PHP Version Require

EventBus 是一个发布/订阅事件总线库。

该库允许同时使用多个事件总线,为此请使用 EventBusManager。然后您可以分别注册域事件总线和集成事件总线。

  • 需要依赖注入容器!

驱动程序

  • 直接 - 立即解析和派发事件到处理器。
  • RabbitMQ - 在队列中发布事件,并使用消费者单独执行。

RabbitMq 驱动程序配置示例

$config = [
    'host' => INTEGRATION_EVENTBUS_AMQP_HOST,
    'port' => INTEGRATION_EVENTBUS_AMQP_PORT,
    'user' => INTEGRATION_EVENTBUS_AMQP_USER,
    'password' => INTEGRATION_EVENTBUS_AMQP_PASSWORD,
    'vhost' => INTEGRATION_EVENTBUS_AMQP_VHOST,
    'options' => [],

    'consumer' => [
        'queue' => INTEGRATION_EVENTBUS_AMQP_CONSUMER_QUEUE,
        'enable_heartbeat_sender' => false,
        'prefetch_count' => 3
    ],

    'publisher' => [
        'project' => INTEGRATION_EVENTBUS_PROJECT_NAME,
        'exchange' => INTEGRATION_EVENTBUS_AMQP_PUBLISHER_EXCHANGE,
        'routing_key_prefix' => INTEGRATION_EVENTBUS_AMQP_PUBLISHER_ROUTING_KEY_PREFIX,
    ],
];