1

私はいくつかの調査を行っており、私たちのサイトの 1 つを実行するための最良の方法を見つけようとしています. つまり、約 100 のサブドメインがあり、各サブドメインには実行する必要がある 21 の cron スクリプトがあります。使用できるいくつかの fopen 関数を使用して、11 に短縮しました。各サブドメインは、同じ API を使用してデータを抽出し、ローカルの mysql DB に保存します。すべてのサブドメインには独自の DB があり、共有されておらず、これらのデータベースはすべて固有のデータであるため、これらのデータベース間で情報が重複することはありません。

私たちはそれを VPS ホスティングでホストするつもりです。これが最善のアイデアかどうかはわかりませんが、期待どおりの仕事をするはずです。これら 11 個のスクリプトの間隔は、次のいずれかです。

5分、8分、10分、15分、30分、45分、1時間、3時間、8時間、12時間、24時間

10 分未満の間隔で実行されるものは、通常、読み込みが非常に高速です (スクリプトあたり 20 秒未満)。

私の質問は、この多くのスクリプトを開くことなく... a.) サーバーをクラッシュさせるための最良の方法/ベストプラクティスは何ですか?

メソッドに対する私の考え: 1) 合計 11 個の cron スクリプトを作成し、各スクリプトの間に sleep() 関数を含めて fopen 関数を実行します。問題は、スクリプトごとに開く必要があるファイルが 100 個ある可能性があることです。2) 設定した時間に実行する 1100 の cron ジョブを作成します。3) ファイルごとに 10 個のスクリプトを実行する約 110 個の fopen cron スクリプトを作成します。

誰かがヒントやコツを手伝ってくれるなら、それは大歓迎です!!

また、サーバー利用には専用かVPSが必要ですか?

4

1 に答える 1

2

私の理解が正しければ、おそらく 11 個の cron スクリプトをセットアップし、それらの cron スクリプトのそれぞれが他の必要なスクリプトを順番に呼び出すことになるでしょう。それらは並行ではなく順番に実行されるため、おそらくその間に sleep() を実行する必要はありません。サーバーの負荷を軽減するために、「nice」コマンドを使用してスクリプトを低い優先度で実行することもできます。

専用または VPS は、サーバーにかける負荷に完全に依存します。VPS のパフォーマンスは、プロバイダーによって大きく異なる場合もあります。与えられた情報からは正確に判断できません。お金を節約しようとしているなら、VPSで試してみてください. 後でいつでもより高価な専用サーバーに移動できます.

于 2012-11-16T21:32:53.007 に答える