telephantast / telephantast-bundle
Telephantast Symfony Bundle
0.1.x-dev
2024-09-11 16:43 UTC
Requires
- php: ^8.1
- symfony/config: ^6 || ^7
- symfony/console: ^6 || ^7
- symfony/dependency-injection: ^6 || ^7
- symfony/http-kernel: ^6 || ^7
- telephantast/message: ^0.1@dev
- telephantast/message-bus: ^0.1@dev
This package is auto-updated.
Last update: 2024-09-11 16:46:55 UTC
README
安装
composer require telephantast/telephantast-bundle '^0.1@dev'
如果您使用 Symfony Flex,则捆绑包将自动在 bundles.php
中注册。否则,请手动操作
return [
// ...
+ Telephantast\TelephantastBundle\TelephantastBundle::class => ['all' => true],
];
配置
运行以下命令以查看完整的配置:
bin/console debug:config telephantast
bunny-transport 和 doctrine-persistence 的配置,请参见以下链接:bunny-transport 和 doctrine-persistence
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator; use Telephantast\DoctrinePersistence\DoctrineOrmEntityFinderAndSaver; use Telephantast\DoctrinePersistence\DoctrineOrmTransactionProvider; use Telephantast\DoctrinePersistence\DoctrinePostgresOutboxStorage; return static function (ContainerConfigurator $di): void { $di->extension('telephantast', [ 'entity_finder_id' => DoctrineOrmEntityFinderAndSaver::class, 'entity_saver_id' => DoctrineOrmEntityFinderAndSaver::class, 'async' => [ 'bunny' => [ 'host' => '%env(string:key:host:url:TELEPHANTAST_TRANSPORT_URL)%', 'port' => '%env(int:key:port:url:TELEPHANTAST_TRANSPORT_URL)%', 'user' => '%env(string:key:user:url:TELEPHANTAST_TRANSPORT_URL)%', 'password' => '%env(string:key:pass:url:TELEPHANTAST_TRANSPORT_URL)%', 'vhost' => '%env(string:key:path:url:TELEPHANTAST_TRANSPORT_URL)%', 'heartbeat' => '%env(int:key:heartbeat:query_string:TELEPHANTAST_TRANSPORT_URL)%', ], 'outbox' => [ 'transaction_provider_id' => DoctrineOrmTransactionProvider::class, 'storage_id' => DoctrinePostgresOutboxStorage::class, ], ], 'entities' => [ MyEntity::class => null, ], ]); $di->services() ->defaults() ->autowire() ->autoconfigure() ->set(DoctrineOrmTransactionProvider::class) ->set(DoctrinePostgresOutboxStorage::class) ->set(DoctrineOrmEntityFinderAndSaver::class); };
TELEPHANTAST_TRANSPORT_URL=bunny://guest:guest@rabbitmq:5672//?heartbeat=60