問題タブ [symfony-messenger]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Symfony の Messenger コンポーネントと Enqueue アダプタを使用して Cloud Pub/Sub からメッセージを消費するにはどうすればよいですか?
私が使用しているツール:
- シンフォニー4.1.6
- Symfony Messenger コンポーネント4.1.6
- エンキュー アダプタ0.1.2
- Google Cloud Pub/Sub トランスポートのエンキュー 0.8.37
私の設定ファイル:
.
Cloud Pub/Sub キューへのメッセージ / コマンドの送信 OK
私のメッセージ/コマンドCreateStore
は、次のように Cloud Pub/Sub に適切に送信されます。
すべてのメッセージ/コマンドは Cloud Pub/Sub Queue にあります。次のように gcloud コマンドライン ツールを使用して手動で表示し、確認できます。
gcloud pubsub subscriptions pull enqueue.commands
gcloud pubsub subscriptions pull enqueue.commands --auto-ack
Cloud Pub/Sub キュー KO からのメッセージの消費
今、次を実行してメッセージを消費しようとしています:
bin/console messenger:consume-messages enqueue
コンシューマーは実行されますが、何も起こりません。
Cloud Pub/Sub で利用可能なメッセージを使用するために何が不足していますか?
php - symfony メッセンジャーはメッセージを消費できません
数週間前、私は Symfony Messenger でメッセージ システムをセットアップしましたが、うまく機能しました。
今日、私はメッセージを介して新しいオブジェクトを作成したかったので、サーバーに行き、メッセージを消費するコマンドを入力しました
まずこんな結果になりました
自分のファイルでこれまでに起こったことはなく、PHPstorm でファイルの行末やエンコーディングを変更したことはありません。
使用しようとしまし$ php bin/console messenger:consume-messages amqp_notifications
たが、このエラーが発生しました。
私のphpinfoのスクリーンショットでわかるように、php-amqp extがインストールされているため、かなり奇妙です
Message クラスまたは Handler は何も変更していません。
また、試してみるためにランダムなアクションを呼び出そうとしnew AMQPConnection()
ましたが、エラーは発生しませんでした。
すべてがインストールされているため、今回はこのエラーで完全に失われました。
PHP 7.3.1 と symfony Messenger 4.2.2 を使用しています
php - Symfony 4 amqp/messenger は pdf を生成します
PDFを添付してメールを送信する必要がありました。SnappyBundle と Swift Mailer を使えば、これらすべてを簡単に行うことができます。呼び出しが行われるたびに../document_name/{id}/mail
、pdf が生成され、電子メールが送信されます。
ユーザー経験値を少し改善するために、RabbitMQ を使用して Messenger コンポーネントを実装し、このアクションをキューに入れることにしました。しかし、この時点でスナッピーの状況はちょっと壊れました。これは私が得ているエラーです:
- PDF を生成して送信するサービスは、
messenger:consume_messages
. - Swift Mailer がメールを送信したらすぐに送信し、メモリにスプールしないようにするために、オン
$msg->send();
をコメントアウトしました。そうしないと、サービスが実行されたときにメールが送信されません。# spool: { type: 'memory' }
swiftmailer.yml
messenger:consume_messages
php - Messenger ハンドラからのカスタム例外
Messenger コンポーネントからいくつかの新機能を取得するために、Symfony 4.3.0-dev バージョンを試します。私のコマンド バスは同期モードで動作します。
ConflictException
アップグレードする前は、ハンドラーからカスタム例外を簡単にスローできました。しかし、4.3.0-dev の場合はSymfony\Component\Messenger\Exception\HandlerFailedException
.
カスタム例外を再度キャッチするにはどうすればよいですか?