大規模なPDFファイルを生成するPHPプロジェクトを継承しました。通常、数千ページに及ぶ数のサーバーメモリと数千ギガのサーバーメモリを使用した後にチョークします。このプロジェクトでは、PDFLibを使用して「メモリ内に」これらのファイルを生成していました。PDFHibリソースでファイルをフラッシュしない
私はこれを修正することを任されました。そのため、私がやったのは、PDFLib出力をメモリに構築するのではなくファイルに送ることでした。問題は、まだPDFメモリを構築しているようだ。そして、メモリの多くは決してOSに返されないようです。結局のところ、全体が窒息して死にます。
大きなPDFのスニペットのみをビルドしてプログラムを処理すると、データがend_document()のファイルに完全にフラッシュされていないようです。エラーは発生しませんが、PDFは読み込み不可能で、16進エディターで開くとストリームが不完全であることが明らかになります。
私は誰かが同様の困難を経験したことを期待しています。
Q:サーバーが数千ページのPDFドキュメントを生成するか、またはサーバーが数千のPDFファイルを生成しますか? PHPプログラムのCLIですか、Webベースですか?それはどうやって始まりますか?そしてそれはどれくらい長くメモリに保存されていますか? – 0scar
多くのページ、多くのPDFはありません。 ApacheのWebベース(mod_php)です。いくつかのメモリが返されます。サーバの再起動時までメモリは返されません。 –