Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 88042a3

Browse filesBrowse files
committed
feature #30628 Making the serializer configurable by transport (weaverryan)
This PR was merged into the 4.3-dev branch. Discussion ---------- Making the serializer configurable by transport | Q | A | ------------- | --- | Branch? | master | Bug fix? | no | New feature? | yes | BC breaks? | yes | Deprecations? | no | Tests pass? | yes | Fixed tickets | #30293 (already closed, but I don't think this was reasonably possible before) | License | MIT | Doc PR | TODO - as many of the new messenger PRs will be done at once Use cases: * #30293 * Transport A will be consumed by your Symfony app (so native php serialization is cool) but transport B will be consumed by another app, so you want to serialize as JSON * Upgrading from Symfony 4.2 to 4.3. The change to the `PhpSerialize` means that messages that were sent to the queue on 4.2, will fail on 4.3. The solution is to use the old serializer in your config. This would allow you to make your existing transport use the old serializer, then migrate to a new transport using the new serializer (then remove the old one later). Thanks! Commits ------- ef6f23e Making the serializer configurable by transport
2 parents 0727664 + ef6f23e commit 88042a3
Copy full SHA for 88042a3

29 files changed

+75
-174
lines changed

‎src/Symfony/Bundle/FrameworkBundle/CHANGELOG.md

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/CHANGELOG.md
+9-2Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,18 @@ CHANGELOG
88
* Not passing the project directory to the constructor of the `AssetsInstallCommand` is deprecated. This argument will
99
be mandatory in 5.0.
1010
* Deprecated the "Psr\SimpleCache\CacheInterface" / "cache.app.simple" service, use "Symfony\Contracts\Cache\CacheInterface" / "cache.app" instead
11+
* Added the ability to specify a custom `serializer` option for each
12+
transport under`framework.messenger.transports`.
1113
* [BC Break] When using Messenger, the default transport changed from
1214
using Symfony's serializer service to use `PhpSerializer`, which uses
1315
PHP's native `serialize()` and `unserialize()` functions. To use the
14-
original serialization method, set the `framework.messenger.serializer.id`
15-
config option to `messenger.transport.symfony_serializer`.
16+
original serialization method, set the `framework.messenger.defaut_serializer`
17+
config option to `messenger.transport.symfony_serializer`. Or set the
18+
`serializer` option under one specific `transport`.
19+
* [BC Break] The `framework.messenger.serializer` config key changed to
20+
`framework.messenger.default_serializer`, which holds the string service
21+
id and `framework.messenger.symfony_serializer`, which configures the
22+
options if you're using Symfony's serializer.
1623
* Added information about deprecated aliases in `debug:autowiring`
1724
* Added php ini session options `sid_length` and `sid_bits_per_character`
1825
to the `session` section of the configuration

‎src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php
+8-17Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1107,29 +1107,19 @@ function ($a) {
11071107
->end()
11081108
->end()
11091109
->end()
1110-
->arrayNode('serializer')
1110+
->scalarNode('default_serializer')
1111+
->defaultValue('messenger.transport.native_php_serializer')
1112+
->info('Service id to use as the default serializer for the transports.')
1113+
->end()
1114+
->arrayNode('symfony_serializer')
11111115
->addDefaultsIfNotSet()
1112-
->beforeNormalization()
1113-
->always()
1114-
->then(function ($config) {
1115-
if (false === $config) {
1116-
return ['id' => null];
1117-
}
1118-
1119-
if (\is_string($config)) {
1120-
return ['id' => $config];
1121-
}
1122-
1123-
return $config;
1124-
})
1125-
->end()
11261116
->children()
1127-
->scalarNode('id')->defaultValue('messenger.transport.native_php_serializer')->end()
1128-
->scalarNode('format')->defaultValue('json')->end()
1117+
->scalarNode('format')->defaultValue('json')->info('Serialization format for the messenger.transport.symfony_serializer service (which is not the serializer used by default).')->end()
11291118
->arrayNode('context')
11301119
->normalizeKeys(false)
11311120
->useAttributeAsKey('name')
11321121
->defaultValue([])
1122+
->info('Context array for the messenger.transport.symfony_serializer service (which is not the serializer used by default).')
11331123
->prototype('variable')->end()
11341124
->end()
11351125
->end()
@@ -1146,6 +1136,7 @@ function ($a) {
11461136
->fixXmlConfig('option')
11471137
->children()
11481138
->scalarNode('dsn')->end()
1139+
->scalarNode('serializer')->defaultNull()->info('Service id of a custom serializer to use.')->end()
11491140
->arrayNode('options')
11501141
->normalizeKeys(false)
11511142
->defaultValue([])

‎src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php
+12-27Lines changed: 12 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,6 @@
7878
use Symfony\Component\Messenger\Handler\MessageHandlerInterface;
7979
use Symfony\Component\Messenger\MessageBus;
8080
use Symfony\Component\Messenger\MessageBusInterface;
81-
use Symfony\Component\Messenger\Transport\Serialization\SerializerInterface;
8281
use Symfony\Component\Messenger\Transport\TransportFactoryInterface;
8382
use Symfony\Component\Messenger\Transport\TransportInterface;
8483
use Symfony\Component\Mime\MimeTypeGuesserInterface;
@@ -1604,28 +1603,6 @@ private function registerMessengerConfiguration(array $config, ContainerBuilder
16041603

16051604
$loader->load('messenger.xml');
16061605

1607-
if (empty($config['transports'])) {
1608-
$container->removeDefinition('messenger.transport.symfony_serializer');
1609-
$container->removeDefinition('messenger.transport.amqp.factory');
1610-
} else {
1611-
if ('messenger.transport.symfony_serializer' === $config['serializer']['id']) {
1612-
if (!$this->isConfigEnabled($container, $serializerConfig)) {
1613-
throw new LogicException('The Messenger serializer cannot be enabled as the Serializer support is not available. Try enabling it or running "composer require symfony/serializer-pack".');
1614-
}
1615-
1616-
$container->getDefinition('messenger.transport.symfony_serializer')
1617-
->replaceArgument(1, $config['serializer']['format'])
1618-
->replaceArgument(2, $config['serializer']['context']);
1619-
}
1620-
1621-
if ($config['serializer']['id']) {
1622-
$container->setAlias('messenger.transport.serializer', $config['serializer']['id']);
1623-
} else {
1624-
$container->removeDefinition('messenger.transport.amqp.factory');
1625-
$container->removeDefinition(SerializerInterface::class);
1626-
}
1627-
}
1628-
16291606
if (null === $config['default_bus'] && 1 === \count($config['buses'])) {
16301607
$config['default_bus'] = key($config['buses']);
16311608
}
@@ -1677,16 +1654,24 @@ private function registerMessengerConfiguration(array $config, ContainerBuilder
16771654
}
16781655
}
16791656

1657+
if (empty($config['transports'])) {
1658+
$container->removeDefinition('messenger.transport.symfony_serializer');
1659+
$container->removeDefinition('messenger.transport.amqp.factory');
1660+
} else {
1661+
$container->getDefinition('messenger.transport.symfony_serializer')
1662+
->replaceArgument(1, $config['symfony_serializer']['format'])
1663+
->replaceArgument(2, $config['symfony_serializer']['context']);
1664+
$container->setAlias('messenger.default_serializer', $config['default_serializer']);
1665+
}
1666+
16801667
$senderAliases = [];
16811668
$transportRetryReferences = [];
16821669
foreach ($config['transports'] as $name => $transport) {
1683-
if (0 === strpos($transport['dsn'], 'amqp://') && !$container->hasDefinition('messenger.transport.amqp.factory')) {
1684-
throw new LogicException('The default AMQP transport is not available. Make sure you have installed and enabled the Serializer component. Try enabling it or running "composer require symfony/serializer-pack".');
1685-
}
1670+
$serializerId = $transport['serializer'] ?? 'messenger.default_serializer';
16861671

16871672
$transportDefinition = (new Definition(TransportInterface::class))
16881673
->setFactory([new Reference('messenger.transport_factory'), 'createTransport'])
1689-
->setArguments([$transport['dsn'], $transport['options']])
1674+
->setArguments([$transport['dsn'], $transport['options'], new Reference($serializerId)])
16901675
->addTag('messenger.receiver', ['alias' => $name])
16911676
;
16921677
$container->setDefinition($transportId = 'messenger.transport.'.$name, $transportDefinition);

‎src/Symfony/Bundle/FrameworkBundle/Resources/config/messenger.xml

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Resources/config/messenger.xml
+1-2Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
<argument /> <!-- Format -->
2727
<argument type="collection" /> <!-- Context -->
2828
</service>
29-
<service id="Symfony\Component\Messenger\Transport\Serialization\SerializerInterface" alias="messenger.transport.serializer" />
29+
<service id="Symfony\Component\Messenger\Transport\Serialization\SerializerInterface" alias="messenger.default_serializer" />
3030

3131
<service id="messenger.transport.native_php_serializer" class="Symfony\Component\Messenger\Transport\Serialization\PhpSerializer" />
3232

@@ -64,7 +64,6 @@
6464

6565
<service id="messenger.transport.amqp.factory" class="Symfony\Component\Messenger\Transport\AmqpExt\AmqpTransportFactory">
6666
<tag name="messenger.transport_factory" />
67-
<argument type="service" id="messenger.transport.serializer" />
6867
</service>
6968

7069
<service id="messenger.transport.sync.factory" class="Symfony\Component\Messenger\Transport\Sync\SyncTransportFactory">

‎src/Symfony/Bundle/FrameworkBundle/Resources/config/schema/symfony-1.0.xsd

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Resources/config/schema/symfony-1.0.xsd
+4-3Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,8 @@
402402

403403
<xsd:complexType name="messenger">
404404
<xsd:sequence>
405-
<xsd:element name="serializer" type="messenger_serializer" minOccurs="0" />
405+
<xsd:element name="default-serializer" type="xsd:string" minOccurs="0" />
406+
<xsd:element name="symfony-serializer" type="messenger_symfony_serializer" minOccurs="0" />
406407
<xsd:element name="encoder" type="xsd:string" minOccurs="0" />
407408
<xsd:element name="decoder" type="xsd:string" minOccurs="0" />
408409
<xsd:element name="routing" type="messenger_routing" minOccurs="0" maxOccurs="unbounded" />
@@ -412,12 +413,11 @@
412413
<xsd:attribute name="default-bus" type="xsd:string" />
413414
</xsd:complexType>
414415

415-
<xsd:complexType name="messenger_serializer">
416+
<xsd:complexType name="messenger_symfony_serializer">
416417
<xsd:sequence>
417418
<xsd:element name="context" type="metadata" minOccurs="0" maxOccurs="unbounded" />
418419
</xsd:sequence>
419420
<xsd:attribute name="format" type="xsd:string" />
420-
<xsd:attribute name="id" type="xsd:string" />
421421
</xsd:complexType>
422422

423423
<xsd:complexType name="messenger_routing">
@@ -437,6 +437,7 @@
437437
<xsd:element name="options" type="metadata" minOccurs="0" maxOccurs="unbounded" />
438438
</xsd:sequence>
439439
<xsd:attribute name="name" type="xsd:string" />
440+
<xsd:attribute name="serializer" type="xsd:string" />
440441
<xsd:attribute name="dsn" type="xsd:string" />
441442
</xsd:complexType>
442443

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/ConfigurationTest.php

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/ConfigurationTest.php
+2-2Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -325,8 +325,8 @@ class_exists(SemaphoreStore::class) && SemaphoreStore::isSupported() ? 'semaphor
325325
'enabled' => !class_exists(FullStack::class) && interface_exists(MessageBusInterface::class),
326326
'routing' => [],
327327
'transports' => [],
328-
'serializer' => [
329-
'id' => 'messenger.transport.native_php_serializer',
328+
'default_serializer' => 'messenger.transport.native_php_serializer',
329+
'symfony_serializer' => [
330330
'format' => 'json',
331331
'context' => [],
332332
],

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger.php

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger.php
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
$container->loadFromExtension('framework', [
77
'messenger' => [
8-
'serializer' => false,
8+
'default_serializer' => false,
99
'routing' => [
1010
FooMessage::class => ['sender.bar', 'sender.biz'],
1111
BarMessage::class => 'sender.foo',

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_amqp_transport_no_serializer.php

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_amqp_transport_no_serializer.php
-10Lines changed: 0 additions & 10 deletions
This file was deleted.

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_routing.php

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_routing.php
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
$container->loadFromExtension('framework', [
44
'serializer' => true,
55
'messenger' => [
6-
'serializer' => 'messenger.transport.symfony_serializer',
6+
'default_serializer' => 'messenger.transport.symfony_serializer',
77
'routing' => [
88
'Symfony\Component\Messenger\Tests\Fixtures\DummyMessage' => ['amqp', 'audit'],
99
'Symfony\Component\Messenger\Tests\Fixtures\SecondMessage' => [

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_transport.php

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_transport.php
+2-2Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
$container->loadFromExtension('framework', [
44
'serializer' => true,
55
'messenger' => [
6-
'serializer' => [
7-
'id' => 'messenger.transport.symfony_serializer',
6+
'default_serializer' => 'messenger.transport.symfony_serializer',
7+
'symfony_serializer' => [
88
'format' => 'csv',
99
'context' => ['enable_max_depth' => true],
1010
],

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_transport_no_serializer.php

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_transport_no_serializer.php
-13Lines changed: 0 additions & 13 deletions
This file was deleted.

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_transports.php

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/messenger_transports.php
+2-1Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,13 @@
33
$container->loadFromExtension('framework', [
44
'serializer' => true,
55
'messenger' => [
6-
'serializer' => 'messenger.transport.symfony_serializer',
6+
'default_serializer' => 'messenger.transport.symfony_serializer',
77
'transports' => [
88
'default' => 'amqp://localhost/%2f/messages',
99
'customised' => [
1010
'dsn' => 'amqp://localhost/%2f/messages?exchange_name=exchange_name',
1111
'options' => ['queue' => ['name' => 'Queue']],
12+
'serializer' => 'messenger.transport.native_php_serializer',
1213
],
1314
],
1415
],

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_amqp_transport_no_serializer.xml

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_amqp_transport_no_serializer.xml
-14Lines changed: 0 additions & 14 deletions
This file was deleted.

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_routing.xml

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_routing.xml
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<framework:config>
99
<framework:serializer enabled="true" />
1010
<framework:messenger>
11-
<framework:serializer id="messenger.transport.symfony_serializer" />
11+
<framework:default-serializer>messenger.transport.symfony_serializer</framework:default-serializer>
1212
<framework:routing message-class="Symfony\Component\Messenger\Tests\Fixtures\DummyMessage">
1313
<framework:sender service="amqp" />
1414
<framework:sender service="audit" />

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_transport.xml

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_transport.xml
+3-2Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,12 @@
88
<framework:config>
99
<framework:serializer enabled="true" />
1010
<framework:messenger>
11-
<framework:serializer id="messenger.transport.symfony_serializer" format="csv">
11+
<framework:default-serializer>messenger.transport.symfony_serializer</framework:default-serializer>
12+
<framework:symfony-serializer format="csv">
1213
<framework:context>
1314
<framework:enable_max_depth>true</framework:enable_max_depth>
1415
</framework:context>
15-
</framework:serializer>
16+
</framework:symfony-serializer>
1617
<framework:transport name="default" dsn="amqp://localhost/%2f/messages" />
1718
</framework:messenger>
1819
</framework:config>

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_transport_no_serializer.xml

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_transport_no_serializer.xml
-15Lines changed: 0 additions & 15 deletions
This file was deleted.

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_transports.xml

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/messenger_transports.xml
+2-2Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@
88
<framework:config>
99
<framework:serializer enabled="true" />
1010
<framework:messenger>
11-
<framework:serializer id="messenger.transport.symfony_serializer" />
11+
<framework:default-serializer>messenger.transport.symfony_serializer</framework:default-serializer>
1212
<framework:transport name="default" dsn="amqp://localhost/%2f/messages" />
13-
<framework:transport name="customised" dsn="amqp://localhost/%2f/messages?exchange_name=exchange_name">
13+
<framework:transport name="customised" dsn="amqp://localhost/%2f/messages?exchange_name=exchange_name" serializer="messenger.transport.native_php_serializer">
1414
<framework:options>
1515
<framework:queue>
1616
<framework:name>Queue</framework:name>
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
framework:
22
messenger:
3-
serializer: false
3+
default_serializer: false
44
routing:
55
'Symfony\Bundle\FrameworkBundle\Tests\Fixtures\Messenger\FooMessage': ['sender.bar', 'sender.biz']
66
'Symfony\Bundle\FrameworkBundle\Tests\Fixtures\Messenger\BarMessage': 'sender.foo'

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_amqp_transport_no_serializer.yml

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_amqp_transport_no_serializer.yml
-5Lines changed: 0 additions & 5 deletions
This file was deleted.

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_routing.yml

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_routing.yml
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
framework:
22
serializer: true
33
messenger:
4-
serializer: messenger.transport.symfony_serializer
4+
default_serializer: messenger.transport.symfony_serializer
55
routing:
66
'Symfony\Component\Messenger\Tests\Fixtures\DummyMessage': [amqp, audit]
77
'Symfony\Component\Messenger\Tests\Fixtures\SecondMessage':

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_transport.yml

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_transport.yml
+2-2Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
framework:
22
serializer: true
33
messenger:
4-
serializer:
5-
id: messenger.transport.symfony_serializer
4+
default_serializer: messenger.transport.symfony_serializer
5+
symfony_serializer:
66
format: csv
77
context:
88
enable_max_depth: true

‎src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_transport_no_serializer.yml

Copy file name to clipboardExpand all lines: src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/messenger_transport_no_serializer.yml
-7Lines changed: 0 additions & 7 deletions
This file was deleted.
+2-1Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
framework:
22
serializer: true
33
messenger:
4-
serializer: messenger.transport.symfony_serializer
4+
default_serializer: messenger.transport.symfony_serializer
55
transports:
66
default: 'amqp://localhost/%2f/messages'
77
customised:
88
dsn: 'amqp://localhost/%2f/messages?exchange_name=exchange_name'
99
options:
1010
queue:
1111
name: Queue
12+
serializer: 'messenger.transport.native_php_serializer'

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.