2017-07-12 8 views
0

大量のテキストを取得するのが速い:データベースを取得するか、参照IDを取得してディスク上のIDのテキストファイルを見つけるだけですか?どちらもディスクを読み取る必要があります...データベースのテキスト列の取得速度VSディスク上の参照ファイル

ほとんどの場合、短い文字列が含まれていますが、特に1つのフィールドにはLONGTEXTの書式が必要です。これらのグループをまとめて、テキストに関する統計などを得るための追加の処理のためにデータベースからのテキスト。現在のところ、この操作は適切な索引付けを行ってもかなり時間がかかり、並べ替えが中止されるようにORDER BY NULLがスローされます。 PHP用の並列処理アーキテクチャを構築しました。ファイルシステムからこのタスクを実行すると、複数のワーカースクリプトを実行して実行することができます。

答えて

1

答え:コンテンツサーバー上のファイル。

なぜですか?

  1. あなたのPHP並列処理の設定を悪用することができます。

  2. (あなたがこれについては、DBMSに大きなテキスト文字列を使用すると、あなたのMySQLサーバ上のワークロードの多くを入れて、あなたの単一希少な資源。それはボトルネックを作成するための式です。)

  3. あなたはおそらくましたすでにLONGTEXTの項目の結果行を取得するPHPコードが首の痛みであることを発見しました。これと比較して、ファイルを読むのは簡単です。簡単ですね。通常は簡単で信頼性があります。

  4. これらのファイルをWebブラウザに配信する必要がありますか?もしそうなら、あなたのWebサーバー(Apacheまたはnginx)がそれを行うことができます。あなたのPHPコードが必要とするのは、正しいハイパーリンクを生成する方法だけです。

  5. これは、何百万もの画像やその他のメディアファイルを処理するウェブプロパティによって大規模に機能することが証明されています。さらに、WordPressはこのようにしています。つまり、非常にが広く展開されています。

関連する問題