2016-11-01 15 views
-3

私はSymfony2のAndroidアプリケーション用REST APIを開発中です。最近、FCM経由でプッシュ通知を送信する実装を行った。すべて正常に動作しますが、問題は実装が通常コントローラ内の通知を送信するため、クライアントがサーバーからの応答を得るためにすべての通知を送信するのを待たなければならないことです。誰かが私にヒントを与えることができます、どのように通知を処理するための最良の方法は、すなわち別のスレッドまたはいくつかのスケジューラでですか?私は自分の可能性が何であるか分かりません。前もって感謝します。Symfony2がプッシュ通知を送信

答えて

2

あなたが探しているのは、非同期作業者の一種です。 これはさまざまな方法で達成できます。

最も簡単な方法は、送信する必要があるすべての通知をデータベースのテーブルのようなキューに格納し、crontabを介して定期的に実行されるコマンド(https://symfony.com/doc/current/console.html)を使用してこれらのエントリを処理することです。

もう1つの方法は、RabbitMQのようなものを使用し、通知を送信するカスタムコンシューマを作成することです。それはまっすぐに転送され、消費者プロセスをデモ化するためにはsupervisordのようなものが必要です。

おそらく、CronJob-Wayが最適です。私はこれらのプッシュ通知がクライアントから送信された要求に依存する必要があるのか​​どうかは分かりませんが、一般的にコントローラからサービスへのすべてのロジックをカプセル化しようとする必要があります。

symfonyの-ドキュメントは常に質問のこれらの種類の優れたエントリで、あなたにいくつかのより詳細な例とヒントを与える必要があります。 https://symfony.com/doc/current/index.html

関連する問題