0

私は彼の写真を販売するクライアントがそれをたくさん販売し、おそらくかなりのトラフィックを得るサイトを作成しています。おそらく1日あたり約2k〜5kのユニーク数です。私はPHPでMongoDBを使用していますが、これらの大きなファイルを保存するにはGridFSを使用する必要があると読みました。2MBから5MB以上の写真ですが、明らかにBWは非常に費用がかかり(クラウドホスティングの場合)、これらの画像をロードするとページのロードに永遠に時間がかかります。

では、PHPとMongoDBでGridFSを使用してサムネイルを作成するにはどうすればよいですか?私はそれをグーグルで検索しましたが、 http://www.php.net/manual/en/class.mongogridfs.phpを指している人以外は実際の情報を見つけることができないようです。

しかし、その情報をどうするかわからない。私はする必要がありますか(私はそうしないことを望みます、これは一種の厄介なものになるでしょう):

アップロード->オリジナルの保存->GDLibを使用してオリジナルのサイズを変更->サイズ変更された画像を元の画像のメタ値としてGridFSに?

4

2 に答える 2

0

私がしたことの1つは、試行{}キャッチの内部でした

  1. user_id、post_id、size = original、height = xxx、width = yyyなどのMETA情報を使用して、元の画像(または最大サイズ)を保存します
  2. すべてのサイズをループし、メインのメタデータと同じMETA情報を使用して保存します。サイズ= $ size、幅= xxx、高さ= yyy、parent_id=元のファイルのID

何らかの例外が発生した場合(gdが失敗した場合、mongoが失敗した場合など)、ストレージを無駄にしないようにファイルを削除します。

于 2010-11-10T16:56:45.930 に答える
0

GD2でMongoDBに保存した後、独自のサムネイルを作成し、サムネイルもフルサイズで保存しました。

于 2010-10-13T19:33:11.777 に答える