|
1 | 1 | # Consumption extensions.
|
2 | 2 |
|
3 |
| -[back to index](../index.md) |
| 3 | + |
| 4 | + |
| 5 | +## [LoggerExtension](https://github.com/php-enqueue/enqueue-dev/blob/master/pkg/enqueue/Consumption/Extension/LoggerExtension.php) |
| 6 | + |
| 7 | +It sets logger to queue consumer context. All log messages will go to it. |
| 8 | + |
| 9 | +## [DoctrineClearIdentityMapExtension](https://github.com/php-enqueue/enqueue-dev/blob/master/pkg/enqueue-bundle/Consumption/Extension/DoctrineClearIdentityMapExtension.php) |
| 10 | + |
| 11 | +It clears Doctrine's identity map after a message is processed. It reduce memory usage. |
| 12 | + |
| 13 | +## [DoctrinePingConnectionExtension](https://github.com/php-enqueue/enqueue-dev/blob/master/pkg/enqueue-bundle/Consumption/Extension/DoctrinePingConnectionExtension.php) |
| 14 | + |
| 15 | +It test a database connection and if it is lost it does reconnect. Fixes "MySQL has gone away" errors. |
| 16 | + |
| 17 | +## [ReplyExtension](https://github.com/php-enqueue/enqueue-dev/blob/master/pkg/enqueue/Consumption/Extension/ReplyExtension.php) |
| 18 | + |
| 19 | +It comes with RPC code and simplifies reply logic. |
| 20 | +It takes care of sending a reply message to reply queue. |
| 21 | + |
| 22 | +## [SetupBrokerExtension](https://github.com/php-enqueue/enqueue-dev/blob/master/pkg/enqueue/Client/ConsumptionExtension/SetupBrokerExtension.php) |
| 23 | + |
| 24 | +It responsible for configuring everything at a broker side. queues, topics, bindings and so on. |
| 25 | +The extension is added at runtime when `--setup-broker` option is used. |
| 26 | + |
| 27 | +## [LimitConsumedMessagesExtension](https://github.com/php-enqueue/enqueue-dev/blob/master/pkg/enqueue/Consumption/Extension/LimitConsumedMessagesExtension.php) |
| 28 | + |
| 29 | +The extension counts processed message and once a limit is reached it interrupts consumption. |
| 30 | +The extension is added at runtime when `--message-limit=10` option is used. |
| 31 | + |
| 32 | +## [LimitConsumerMemoryExtension](https://github.com/php-enqueue/enqueue-dev/blob/master/pkg/enqueue/Consumption/Extension/LimitConsumerMemoryExtension.php) |
| 33 | + |
| 34 | +The extension interrupts consumption once a memory limit is reached. |
| 35 | +The extension is added at runtime when `--memory-limit=512` option is used. |
| 36 | +The value is Mb. |
| 37 | + |
| 38 | +## [LimitConsumptionTimeExtension](https://github.com/php-enqueue/enqueue-dev/blob/master/pkg/enqueue/Consumption/Extension/LimitConsumptionTimeExtension.php) |
| 39 | + |
| 40 | +The extension interrupts consumption once time limit is reached. |
| 41 | +The extension is added at runtime when `--time-limit="now + 2 minutes"` option is used. |
| 42 | + |
| 43 | +## [SignalExtension](https://github.com/php-enqueue/enqueue-dev/blob/master/pkg/enqueue/Consumption/Extension/SignalExtension.php) |
| 44 | + |
| 45 | +The extension catch process signals and gracefully stops consumption. Works only on NIX platforms. |
| 46 | + |
| 47 | +## [DelayRedeliveredMessageExtension](https://github.com/php-enqueue/enqueue-dev/blob/master/pkg/enqueue/Client/ConsumptionExtension/DelayRedeliveredMessageExtension.php) |
| 48 | + |
| 49 | +The extension checks whether the received message is redelivered (There was attempt to process message but it failed). |
| 50 | +If so the extension reject the origin message and creates a copy message with a delay. |
| 51 | + |
| 52 | +[back to index](../index.md) |
0 commit comments