2017-09-23 5 views
1

データを読み込み、私はPHPの機能を持っている、「true」または「false」を返すに基づいて、特定のデータは、データベース/ XMLXMLまたはSQL - だけ頻繁

に存在する場合、この検索クエリがページごとに実行されますウェブサイトの負荷。

どのオプションがSQLデータベースまたはXMLに格納されたデータによって優れているか。 ページロード/訪問回数が多いため、負荷が少なく、サーバーのパフォーマンスに影響しません。

データを変更または挿入する必要はありません。検索するだけです。

は-------あなた

ありがとうござい更新--------

別の方法として、私が考えていたが、ファイル名の形式ですべての情報(文字列)を格納することです。 [例:1000個のファイルが異なる名前のディレクトリ] ディレクトリ内の特定のファイル(たとえば、457.txtなど)を検索して、そのファイルが存在するかどうかを調べることができます。

<?php 
if(file_exists('457.txt'){ 
echo "file exists"; 
} 

それがXMLクエリ& SQLクエリに比べて、サーバー上でどのくらいの負荷になりますか?

主な目的は、特定のデータがすでにサーバー上に存在するかどうかを確認することです。

答えて

0

ユーザー/システムの負荷が懸念される理由がある場合は、私はXMLファイルの解決策について主張しますが、あなたが考える理由ではありません。 並行性の詳細です。複数のプロセスが同時にファイルを更新するとどうなりますか?ファイルに書き込むことで、すぐに遭遇する可能性があるロックの問題が懸念されます。

ファイル名のアイデアは興味深いですが、OS、FS、ストレージレイヤの複雑さを徹底的に超えていない限り、おそらく規模が大きくなり、許容可能なパフォーマンスで単一のアイテム存在検索を行うことができません。それは、格納するデータの量とアクセス方法に依存します。

データベースは、これらの種類のニーズに対応する最も汎用性の高いストレージソリューションであり、他の多くの利点(ACIDトランザクション[https://en.wikipedia.org/wiki/ACID]、スケーラビリティなど)の中で簡単で明示的な言語を使用してクエリを実行できます。 )。

+0

この検索クエリは、ウェブサイトの各ページの読み込み時に実行されます。ですから、データベースを使用すると、何千ものSQL接続が作成されます。新しいSQL接続がページロードごとに作成されます。 –

+0

ええ、データベースはそれを処理するためのものです。 stackoverflowを含むすべての動的Webサイトはこれに依存しており、線形で信頼性があります。 – Calimero

+1

さて、ありがとう:) –

関連する問題