私たちのチームは、メディアライブラリストレージエンジンをデータベースBLOBストレージからファイルシステムに切り替える過程にあります(LAMPスタックを使用しています。PHPはバージョン5.3です)。保存されている実質的にすべてのコンテンツは、アプリケーションに取り込まれる画像データであり、アプリケーションで実行されるほとんどの処理は、GDを使用したサイズ変更/リサンプリングです。データベースストレージは、データベースサーバーへの負担を軽減するために放棄しようとしている、以前のビルドから残ったアーティファクトです。
以前にこのようなファイルシステムベースのイメージライブラリをいくつか構築しましたが、これは大きくなり、ユーザーデータでいっぱいになると変更が非常に困難になるため、いくつかのベストプラクティスを固めたいと思います。
以前のビルドでは、読み取り/書き込み権限を持つ「resources」フォルダーを作成していました。そのディレクトリ内には、コンテンツが関連するサイトの「セクション」にちなんで名付けられたディレクトリの追加レイヤーがあり、通常、そこにコンテンツを実装したモデルまたはコントローラーの名前で編成されていました。そのレイヤーの下には、データベース内の主キーが主所有権を決定する番号を共有するユーザー/プロファイルIDまたは数字で名前が付けられたフォルダーがありました(これらは通常、この種の展開では、所有権以来、画像が由来するコンパイルのギャラリーIDでした特定のユーザーによるギャラリーの作成は、データベース/オブジェクトモデルを介して処理できます。)
この状況でコミュニティはどのようなアプローチを使用し、どれが最もスケーラブルでしたか?単に手動でモデルにコーディングするよりも、この種の組織をより効果的に処理できるApache用のソフトウェアはありますか?SOとGoogleでファイルシステムメディアストレージ上の同様のスレッドを数回検索しましたが、すでに確立されている「BLOBを使用しない」という効果以外はほとんど見つかりませんでした。難しいことや速いことはありませんか?
ご指導ありがとうございます!