私はAngular 2 WebアプリケーションのデータベースとしてCouchbase Serverを使用しています。データの交換は、私のCouchBaseサーバーと通信するWebAPIを介して行われます。 私はデータ角度2を使用して観測可能データの連続ストリームを表示する
this.events = getRecentEvents(_siteUrl: String) {
return Observable.interval(5000)
.switchMap(() => this.http.get(_siteUrl).map((res: Response) => res.json()))
.do(data => console.log('server data:', data)) // debug
.catch(this.handleError);
}
の更新リストを取得するために、私は、これは現時点ではまだそれを行うための正しい方法であれば、私は5秒ごとにWebAPIのために(ポーリング)を照会してるかわかりません被監視オブジェクトを使用すると、これを行うための正しい方法か、私が持っている疑問がある
<li class="item" *ngFor="#eventitem of events | async; #i = index">
<h1>{{eventitem}} {{i}}</h1>
</li>
非同期パイプを使用してUI上のリストにバインドするために、この呼び出しから返さ WebAPI呼び出しが繰り返し行われるため、サーバーに負荷をかけすぎませんか? これは、データの連続的な流れを処理する方法ではない場合、より良い選択肢を提案することができます。
ありがとうございます。しかし、データベースエントリに変更があったときはいつでも、サーバ側で通知を受け取る方法があるので、サーバ側のコードに通知してオブザーバブルを作成し、クライアントにデータ変更を送信することができます。現時点で私はここにこだわっています –
それはあなたがアクセスcouchbaseのために使用している言語/プラットフォーム/ライブラリに依存します。 –