1

検索する必要のあるファイルが約280,000あり、適切なファイルが返され、開かれます。ファイル名は、予想される検索用語と完全に一致します。

検索語は、PHPを使用した入力ボックスによって取得されます。検索に時間がかからないようにするための最良の方法は何ですか?

ありがとう!

4

2 に答える 2

2

ファイルシステム自体が1つのディレクトリにある280,000個のファイルで苦労しているのではないかと思います。

私が過去に取ったアプローチは、ファイル名の頭文字に基づいてこれらのファイルをサブディレクトリに配置することです。

1/100000.txt
1/100001.txt
...
9/900000.txt

など。2番目の文字などを使用してさらに細分化できます。

于 2012-10-18T16:14:45.623 に答える
0

タグにmysqlを追加したのは良いことです。理想的には、ディレクトリをmysqlテーブルにインデックス付けし、それを使用して実際の検索を行うCRONタスクがあります。代数はファイルシステムの反復よりも高速です。ファイルが変更される頻度に応じて、タスクを毎日または1時間ごとに実行できます。または、Guardなどを使用して、ファイルシステムの変更を監視し、適切な更新を行います。

参照:https ://github.com/guard/guard

于 2012-10-18T16:14:34.857 に答える