ソケット ライブラリ (SOCK_STREAM) を使用して、Python で小さなサーバーを開発しています。サーバーは、大量の小さなメッセージ (25 ~ 40 バイト) を受信し、それらを処理して、できるだけ高速に転送する必要があります。
Linux と OSX では完全に動作し、socket の recv 関数はデータが到着するとすぐにデータを返します。残念ながら Windows (8 Pro) では、recv 関数から返す前にデータを蓄積するようです。
recv 関数を使用して読み取るデータの最大量を制限しようとしましたが、あまり役に立ちませんでした。内部にデータが蓄積されているようです。
サーバー (Python) またはクライアント (Java のソケット) で設定する必要のある特定のソケット オプションはありますか?
編集
私の同僚の 1 人が、各メッセージをダミー データで埋めて 1KB に切り上げるよう提案しました。これは、@PeterLawrey が指す内部バッファーを回避するのに役立つ場合があります。
試す機会がありませんでした。それが有効で広く採用されているテクニックだと思いますか?