私はスループットを集中的に使用するアプリケーションに取り組んでおり、ボトルネックを特定しようとしているときに、要求本文をディスクに書き込み、要求全体が受信されたときにそれを読み戻すのは、かなり遅い操作であることがわかりました。
私の送信側は、1 回の HTTP POST で最大 512KB のデータを送信しますが、これは変更できないため、サーバーでより適切に処理する方法を探しています。デバッガーを見ると、Play は RawBuffer クラスを使用して着信データを管理し、そのクラスには現在 100KB に設定されているmemoryThresholdフィールドがあります。プログラムまたは構成ファイルを介してこのデフォルトを 512KB に変更する方法を知っている人はいますか?
更新: 成功しなかったこと:
- application.conf ファイルに「parsers.text.maxLength=512K」と入力します。
- application.conf の「parsers.raw.maxLength=512K」と「parsers.raw.memoryThreshold=512K」
- "@BodyParser.Of( value = BodyParser.Raw.class, maxLength = 512 * 1024 )" アノテーションをアクション メソッドに追加します。
- 上記の 3 つの application.conf プロパティ名はすべて、「512K」ではなく「512288」です。