HTTPストリームに接続して消費するテキストデータを記録するクライアントがあります。httpストリームからの非ブロック読み取り/ログ
私はストリーミングサーバーにHTTP GETリクエストを送信します...サーバーはデータを返信し、継続的に公開します...テキストをパブリッシュするか、またはping(テキスト)メッセージを定期的に送信します。
消費するデータをノンブロッキングで読み込んでログに記録する必要があります。
私はこのような何かをしています:
import urllib2
req = urllib2.urlopen(url)
for dat in req:
with open('out.txt', 'a') as f:
f.write(dat)
私の質問です:ストリームが連続しているとき
が、これは今までブロックされますか?
各チャンクでどれだけのデータが読み込まれ、それを指定/チューニングできますか?
これはHTTPストリームを読み書きする最も良い方法ですか?
for/with orderは意図的でした。これは、各書き込みでファイルハンドルをオープン/クローズします。ビジーなストリームでは効率的ではありませんが、私の場合、ストリームは主にブロック/待機して、データをログに記録することがあります。 –