2016-11-29 4 views
1

私はギャラリーを持っているPHP Webアプリケーションを持っています。画像で作業しているPHP

このギャラリーは正当なJavaScriptを使用しています。

次に、timthumb.phpを使用して、イメージをサーバーに保存せずにイメージのサイズを変更します。私は1つが良いだろうどの知っていただきたいと思い

...

  • またはサーバーのキャッシュフォルダとロード全てにリサイズした画像を保存しtimthumb.php使用してすべての画像をロード

    1. キャッシュフォルダからの画像。

    私はこれら2つの方法を試しました。不思議なことに、第2の方法は、最初の負荷に対して最初の方法よりも遅い。

    ありがとうございました。

    リン

  • 答えて

    1

    正直、私はtimthumb.phpについてよく考えていません。

    写真をサーバのキャッシュフォルダに保存する方が良いと思われますが、画像のパスをデータソース(通常はリレーショナルデータベース)に保存してから、写真を取得しながらキャッシュされたフォルダ。

    キャッシュが何度も再読み込みされる可能性があります。そのため、最初の読み込み時にいつかキャッシュを取得する可能性があります。

    +0

    これらの画像を保存するためのフォルダを作成しました。消去されません。しかし、まだ.. timthumb.php経由でイメージをロードすることは、ディスクの読み込みに比べて高速です。 –

    +0

    私はtimthumb.phpはちょうどサイズ変更スクリプトです...あなたの画像のソースはtimthumb.phpへの入力として与えられる前に何ですか? –

    +0

    yankianki..yes timthumb.phpはサイズ変更スクリプトです。このスクリプトの画像はすでにサーバーにアップロードされています。 –

    2

    Timthumbは、セキュリティ上の問題を持っている傾向があり、いずれかの方法で画像処理がRAMの多くを必要とするので、キャッシュフォルダを持つことは最良の選択肢です。私はフォルダとキャッシュフォルダではないことに注意してください。 IISサーバーやWindowsベースのサーバーでは、数千ものファイルを持つフォルダにアクセスするのが遅くなります。 Linuxは同じ問題を抱えていることが知られていますが、あなたがフォルダに数十万のファイルがあるまではそうではありません。いずれにしても、何百万もの画像を扱っている場合は、ファイルを別のフォルダに分類して、ファイルの場所を特定しようとするOSの速度が低下することはありません。

    +0

    私はLinuxマシンです。これは新しいウェブサイトです。将来的に画像数が増える可能性があります。私はtimthumb.phpがセキュリティ上の問題を抱えている可能性があることを知り、外部リンクの処理を無効にしました。 –

    +0

    Lynn Reyは、イメージファイルを直接処理してからPHPプロセスに提供する方が、より高速に処理する必要があります。ファイルの巨大なデータベースを持つことは、このルールの例外になります。サーバー側の圧縮をイメージファイルに使用している場合は、サーバーの設定も問題の一部になる可能性があります。圧縮ではサーバ上とブラウザ上でCPU時間が必要となり、PHPなどの圧縮されていない画像が圧縮された画像よりも高速に読み込まれる可能性があります。 –

    +0

    ありがとうラルフ。サーバの設定についてもっと調べる必要があるようです。 –

    関連する問題