0

私はマルチプレイヤー Flash ゲームを書いています。サーバーは Python で書かれており、1 秒間に 25 回更新されます。更新のたびに、プレーヤーが移動している場合、サーバーはそのプレーヤーの新しい位置を含む TCP メッセージを送信します。ローカルで実行すると、すべてがうまくいきましたが、最近、コードをより高いスペックの展開サーバー (100Mbps パイプ接続) にプッシュして、どのように動作するかをテストしました。

私が気付いたのは、これらの更新メッセージが送信中にひとまとめになっていて、6 秒で到着したことです。ローカルでテストしたところ、メッセージは 1/25 秒間隔で到着していたため、プレイヤーの動きは非常にスムーズでしたが、実際にはそうではありません。

これと同じ問題を抱えていたとしたら、解決策を見つけるために、何を調べて実験しますか?

4

1 に答える 1

1

Nagle のアルゴリズムを無効にして、セグメントがすぐに送信されるようにすることができます。ただし、要件を考えると、UDP の方が適しているのではないかと思います。

于 2012-07-03T07:32:37.940 に答える