定制 mrandmrssmith/idempotent-symfony-messenger-consumer-bundle 二次开发

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

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

mrandmrssmith/idempotent-symfony-messenger-consumer-bundle

最新稳定版本:1.0.1

Composer 安装命令:

composer require mrandmrssmith/idempotent-symfony-messenger-consumer-bundle

包简介

idempotent-consumer-bundle

README 文档

README

Bundle for symfony messenger which provide functionality to make your consumer idempotent.

It based on mrandmrssmith/idempotent-consumer-bundle and provide integration with symfony messenger.

You can you package mrandmrssmith/idempotent-consumer-doctrine-persistence-bundle to provide persistence layer using doctrine.

It uses messenger events to handle incoming and processed or failed messages.

Installation

Add this package to your project

composer require mrandmrssmith/idempotent-symfony-messenger-consumer-bundle

Usage

You have to remember about implement IdempotentKeyResolver. Interface is in core bundle mrandmrssmith/idempotent-consumer-bundle

By default it will try check for all messages.

If you want, you can restrict the action so that it checks only messages from a particular transport or messages that are instances of a class/interface

To do this you need overwrite value of some properties in bundle config yaml file mms_idempotent_consumer_symfony_messenger.yaml.

  1. Configure supported messages
mms_idempotent_consumer_symfony_messenger:
    supported_messages: 
        - App\Message\YourMessage
        - App\Message\YourSecondMessage
  1. Configure supported transports
mms_idempotent_consumer_symfony_messenger:
    supported_transports: 
        - your_transport_name
        - your_second_transport_name

if you configure both in first order it will check transport then message.

  1. you can implement your own voter and replace default voter MrAndMrsSmith\IdempotentConsumerSymfonyMessengerBundle\Voter\WantToCheckMessageVoter
mms_idempotent_consumer_symfony_messenger:
    voter: 'your_voter_service_id'

Support

🤗 Please consider contributing if you feel you can improve this package, otherwise submit an issue via the GitHub page and include as much information as possible, including steps to reproduce, platform versions and anything else to help pinpoint the root cause.

Contributing

👍 If you do contribute, we thank you, but please review the CONTRIBUTING document to help us ensure the project is kept consistent and easy to maintain.

Versioning

⌛ This project will follow Semantic Versioning 2.0.0.

Changes

🛠️ All project changes/releases are noted in the GitHub releases page and in the CHANGELOG file.

Following conventions laid out by keep a changelog.

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-08-29