Apacheサーバーのサーバー側とAndroidデバイスのクライアント側にGCMのデモコードを適用しましたが、うまく機能しています。しかし、次のようにアプリケーションでこのサービスをアクティブにする必要があります。SqlServerにデータベースがあり、特定のデータが変更されるたびにAndroid携帯にプッシュ通知を自動的に送信する必要があるため、更新後および挿入後トリガーを使用する必要があると思いますこれを行うが、私はそれを行う方法がわかりません。事前に感謝します。
2527 次
1 に答える
1
トリガーから実行しないでください。各テーブルの更新に GCM プッシュのレイテンシーを追加すると、パフォーマンスがすぐに耐えられないほど低下します。トリガーを GCM 呼び出しから分離する必要があります。これを実現する最善の方法は、キューを使用することです。
- テーブルをキューとして使用し、外部プロセスにキューを監視させて GCM 呼び出しを処理させることができます。
- Service Brokerを使用して、内部でアクティブ化されたプロシージャから、またはキューを監視する外部プロセスからGCM 呼び出しを配信できます。
- MSMQを使用して、外部プロセスから NT キューを監視できます。
私の推奨事項は、最も単純で、単純さの固有の堅牢性を備えている最初のオプションを使用することです。リンクされた記事を読んで、テーブルをキューとして使用するために何が必要かを理解し、手抜きをしないでください。
すべてのオプションは引き続きトリガーに依存して通知をエンキューしますが、GCM 呼び出しではなく、ローカル エンキューになります。
誰かが SQLCLR を使用してトリガー自体から GCM を呼び出すという単純な解決策を考えると思いますが、そうしないでください。
于 2012-10-15T07:26:41.527 に答える