1

ファンタジースポーツのウェブサイトのドラフトアプリケーションを実装する必要があります。各ユーザーは1分30秒でチームのプレーヤーを選択でき、その時間が経過すると自動的に選択されます。計画されている実装では、Juggernautを使用して、ドラフトに参加している各ユーザーにターンの変更をプッシュします。しかし、レイテンシーを処理する方法についてはまだわかりません。

ここでの主な問題は、ユーザーが他のユーザーよりもレイテンシーが高い場合、少し遅れてターンの変更を受け取り、タイマーが同期されないことです。誰かが自分でプレーヤーを選んだ後にターンチェンジを受け取ったとしましょう。彼はまだ2秒残っていると思っていますが、その場合はどうすればよいでしょうか。各ユーザーの待ち時間を測定し、その問題を最小限に抑えるためにクライアント側のタイマーを調整することをお勧めしますか?もしそうなら、どのようにそれを実装できますか?

4

1 に答える 1

1

これはトリッキーな問題ですが、そこにはいくつかの良い解決策があります。time.govが何をするのか、そしてどのようにそれを行うのかを調べてください。基本的に、私が理解しているように、Javaを使用してサーバーに対して複数の繰り返し要求を実行し、通信に関連するレイテンシーを把握しようとします。次に、返された時間データを歪めるために使用するレイテンシーの測定値を生成します。アプリケーションに同じプロセスをさらに正確に使用できます。レイテンシーとは何か、そしてそれが時間とともにどのように変化するかを追跡することで、レイテンシーの数値の信頼性などについて統計的な推測を行うことができます。少し複雑になる可能性がありますが、パフォーマンスをスムーズにすることができます。私の理解では、これはほとんどのMMOがラグを管理するためにも行っていることです。

于 2011-08-01T21:34:52.347 に答える