定制 shredio/messenger 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

shredio/messenger

最新稳定版本:1.1.0

Composer 安装命令:

composer require shredio/messenger

包简介

README 文档

README

Nette

services:
	- Shredio\Messenger\Command\ConsumeCronMessagesCommand(
		@messenger.transport.container,
		@messenger.bus.routable,
		@messenger.event.dispatcher,
		@messenger.logger.logger
	)
	- Shredio\Messenger\Doctrine\RootEntityMessageDispatcher
	- Shredio\Messenger\Bus\DefaultMessengerBusAccessor
	- Shredio\Messenger\Bus\DefaultRoutableBus
	- Shredio\Messenger\DefaultMessageDispatcher('root', ['stocks'])

messenger:
	bus:
		commandBus:
			middlewares:
				- Shredio\Messenger\Middleware\DiscardableMessageMiddleware(@messenger.logger.logger)

Usage

Command Message:

use Shredio\Messenger\Message\CommandMessage;

class MyCommandMessage implements CommandMessage
{
}

Event Message:

use Shredio\Messenger\Message\EventMessage;

class MyEventMessage implements EventMessage
{
}

Query Message:

use Shredio\Messenger\Message\QueryMessage;

class MyQueryMessage implements QueryMessage
{
}

By default, all messages are synchronous and private. If you want to make a message asynchronous, you can do so by implementing the AsynchronousMessage interface.

use Shredio\Messenger\Message\AsynchronousMessage;

class MyAsyncCommandMessage implements CommandMessage, AsynchronousMessage
{
}

If you want to make a message public, you can do so by implementing the PublicMessage interface.

use Shredio\Messenger\Message\PublicMessage;

class MyPublicCommandMessage implements CommandMessage, PublicMessage
{
}

Prioritization

You can prioritize messages by implementing the PriorityAwareMessage interface.

use Shredio\Messenger\Message\PriorityAwareMessage;

class MyPriorityCommandMessage implements CommandMessage, PriorityAwareMessage
{

    public function getPriority(): MessagePriority
    {
        return MessagePriority::Important;
    }
}

统计信息

  • 总下载量: 406
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-01-19