Как использовать сообщения из Cloud Pub/Sub с помощью компонента Messenger адаптера Symfony и Enqueue?

Инструменты, которые я использую:


Мои конфигурационные файлы:

#service.yaml

framework:
    messenger:
        transports:
            default: 'amqp://guest:guest@localhost:5672/%2f/messages'
            enqueue: 'enqueue://gps'
        default_bus: messenger.bus.commands
        buses:
            messenger.bus.commands: ~
            messenger.bus.events: ~
        routing:
            # Route your messages to the transports
            'App\Message\Command\Store\CreateStore': enqueue

,

#enqueue.yaml

enqueue:
    transport:
        default: 'gps'
        gps:
            projectId: '%env(GOOGLE_PROJECT_ID)%'
            keyFilePath: '%env(GOOGLE_APPLICATION_CREDENTIALS)%'

Отправка сообщения / команды в Cloud Pub/Sub queue OK

Мое сообщение / команда CreateStore правильно отправить в Cloud Pub/Sub следующим образом:

use App\Message\Command\Store\CreateStore;
use Enqueue\MessengerAdapter\EnvelopeItem\TransportConfiguration;

$command = new CreateStore();
$this->commandBus->dispatch((new Envelope($command))->with(new 
TransportConfiguration(
    ['topic' => 'enqueue.commands']
)));

Все сообщения / команды находятся в моей Cloud Pub/Sub Queue, я могу просмотреть их и подтвердить их вручную с помощью инструмента командной строки gcloud, например:

gcloud pubsub subscriptions pull enqueue.commands

gcloud pubsub subscriptions pull enqueue.commands --auto-ack


Использование сообщений из облачного паба / подпоследовательности KO

Теперь я пытаюсь использовать мое сообщение, выполнив:

bin/console messenger:consume-messages enqueue

Потребитель бежит, но ничего не происходит.

Чего мне не хватает, чтобы использовать мои сообщения, доступные в Cloud Pub/Sub?

0 ответов

Другие вопросы по тегам