Skip to content

Releases: iamfarhad/LaravelRabbitMQ

1.1.0

06 Nov 23:02

Choose a tag to compare

Full Changelog: 1.0.2...1.1.0

[1.1.0] - 2025-01-27

🚀 Major Advanced Features Added

Dead Letter Exchange (DLX)

  • Automatic DLX Setup: Easy configuration for failed message handling
  • Configurable TTL: Message time-to-live settings
  • Dead Letter Queues: Automatic creation of DLQ for each queue
  • Routing Key Control: Custom routing for dead-lettered messages
  • DLX Integration: Seamless integration with existing queues

Advanced Routing System

  • ExchangeManager: Comprehensive exchange management and routing
  • Topic Exchanges: Pattern-based message routing (e.g., user.*.email)
  • Fanout Exchanges: Broadcast messages to all bound queues
  • Headers Exchanges: Route based on message headers
  • Exchange Bindings: Flexible queue-to-exchange bindings

Multi-Queue & Multi-Exchange Support

  • Queue Configuration: Define multiple queues with different settings
  • Exchange Configuration: Configure multiple exchanges with various types
  • Lazy Queues: Optimize memory for high-volume queues
  • Priority Queues: Support for message and consumer priorities
  • Custom Arguments: Full control over queue and exchange arguments

Exponential Backoff Strategy

  • ExponentialBackoff: Intelligent retry mechanism with configurable parameters
  • Jitter Support: Prevents thundering herd problem with randomized delays
  • Configurable Multiplier: Customizable backoff progression
  • Max Delay Cap: Prevents excessive wait times
  • Execute Helper: Convenient wrapper for retry logic

RPC (Remote Procedure Call)

  • RpcClient: Synchronous request-response pattern
  • RpcServer: Handle RPC requests with callbacks
  • Correlation ID: Automatic request-response matching
  • Timeout Control: Configurable timeout for RPC calls
  • Reply Queue: Automatic callback queue management

Publisher Confirms

  • Reliable Delivery: Broker acknowledgment for published messages
  • Confirm Mode: Enable/disable publisher confirms
  • Wait for Confirms: Block until messages are confirmed
  • Pending Tracking: Track unconfirmed messages
  • Timeout Control: Configurable confirmation timeout

Transaction Management

  • AMQP Transactions: Full transaction support
  • Atomic Operations: Commit/rollback for multiple operations
  • Transaction Helper: Convenient transaction wrapper
  • Nested Transaction Prevention: Safety checks for transaction state
  • Error Handling: Automatic rollback on exceptions

Delayed Messages

  • TTL-Based Delay: Built-in delay using message TTL
  • Plugin Support: RabbitMQ delayed message exchange plugin
  • Flexible Scheduling: Schedule messages for future delivery
  • Header-Based Delay: x-delay header support
  • Configurable Exchange: Custom delayed exchange names

1.0.2

11 Sep 16:59

Choose a tag to compare

Full Changelog: 1.0.1...1.0.2

1.0.1

11 Sep 16:50

Choose a tag to compare

Full Changelog: 1.0.0...1.0.1

1.0.0

10 Sep 21:28

Choose a tag to compare

What's Changed

  • Update phpstan/phpstan requirement from ^1.10 to ^1.10 || ^2.0 by @dependabot[bot] in #7

New Contributors

Full Changelog: v0.1.2...1.0.0

v0.1.2

17 Apr 16:24

Choose a tag to compare

What's Changed

  • feat: make isSecure flag configurable by @algins in #6

New Contributors

  • @algins made their first contribution in #6

Full Changelog: v0.1.1...v0.1.2

v0.1.1

04 Apr 18:31

Choose a tag to compare

Full Changelog: v0.1.0...v0.1.1

Added

  • Made RabbitMQ basic_qos settings (prefetch_size, prefetch_count, global) configurable via the queue.php or RabbitMQConnectionConfig.php configuration file.

Changed

  • Updated documentation to reflect the new basic_qos configuration options.

Fixed

  • N/A

v0.1.0

29 Mar 22:11

Choose a tag to compare

Full Changelog: v0.0.14...v0.1.0

  • added laravel 12 support
  • fix some issues

v0.0.14

08 Nov 08:58

Choose a tag to compare

Full Changelog: v0.0.13...v0.0.14

v0.0.13

08 Nov 08:48

Choose a tag to compare

Full Changelog: v0.0.12...v0.0.13

v0.0.12

07 Nov 08:45

Choose a tag to compare

Full Changelog: v0.0.11...v0.0.12

-- add parallel consume