3

ユーザーのデバイストークンをデータベースに保存しました。 通知をプッシュする時点で、データベースからすべてのデバイストークンをロードした後、ループでプッシュメッセージを1回のユーザーに送信します。 現在、約300,000人のユーザーがいますが、私が知りたいことは、他にも良い方法がありますか? ありがとう多くのユーザーにiOSプッシュ通知

+0

私はいくつかのスレッドを作成して各スレッドのn-usersをキューから取得する必要があるかどうか不思議でした – Arcadian

+0

あなたは通知をプッシュするために何を使用していますか?[フォーク](http://en.wikipedia.org/wiki/Fork_(operating_system))を実装するサーバースクリプトを使用しました。この方法でいくつかのフォークを生成して通知を送信できます同時に、通知の送信時間が大幅に短縮されます。 – KDaker

+0

@KDakerありがとう、私はそれを知らなかった、私はそれを試してみましょう。 – Mil0R3

答えて

3

アップルでは良い方法はありません。同じメッセージを各デバイストークンに送信する必要があります。 Parse.comのようなサービスでは、デバイスのグループにブロードキャストさせることで、あなたのために汚い作業を隠すことができますが、最初に各デバイストークンをグループに加入させる必要があります...

質問にお答えしますあなたがループを作ってすべてのデバイストークンに送る必要があります:(。

+0

ロングポーリングはどうですか? – Mil0R3

+0

ロングポーリングを実装することはできますが、アプリがVOIPやナビゲーションでない場合や、バックグラウンドでの実行が許可されている他の種類のアプリであれば、ユーザーがアプリを閉じるとすぐにポーリングが行われますもはや仕事... 編集:アプリが開いている間に長いポーリングを使用し、バックグラウンドコードの呼び出しでも行う(iOSでは、どのアプリでもバックグラウンドで最大でコードを実行できます)アプリが閉じられてから10分)。あなたのアプリが長いポーリング接続を生かし続けることを許された後で、代わりにプッシュ通知の送信を開始するようにサーバーに通知します。 – Redth

+0

また、私の図書館:PushSharp https://github.com/Redth/PushSharpは、非常に短時間で多くの通知を送ることができます。 – Redth