2011-12-19 15 views
3

クライアントがJSONの形式でオブジェクトをサーバーに送信し、PHPスクリプトを実行してこのデータをデータベースに格納するクライアント/サーバーアプリケーションがあります。PHPがJSONストリームを消費する

問題は、ストリームではなく文字列で動作するように見えるjson_decode関数を使ってデコードが行われることです。 HTTPリクエストからinpustreamを取得し、ストリーミングJSONパーサーを使用してメモリの足のプリントを減らす方法はありますか?

私はジャックソン、xtreamのようないくつかのフレームワークがあるjavaの背景から来ています。 PHPに相当するものはありますか?さもなければ、私はスケーラビリティの問題にぶつかるでしょう。

答えて

0

php://入力ストリームを(fopen()で)解析したいかもしれませんが、すべてのSAPI(apache-mod-php、fastcgi)はHTTPリクエストの終了を待ってからphpそれで役に立ちません。

+0

答えに感謝します。これを行うにはボックスやフレームワークから何もないようです。 私が考えることができる唯一の他のものは、クライアントが複数のリクエストを送信して使用するためにデータを分割することです(これは無駄だと思われ、余分なHTTPオーバーヘッドのようです) HTTPリクエストを解析するSAPIに関するあなたのコメントPHPがそれを得る前に、私はもう少し研究をしなくてはなりません – bluphoenix

1

ストリームで動作するちょっと純粋なPHP JSON streaming parserを書きました。それがあなたが探しているもののようなものであることを願っています。

関連する問題