私はMySQLと通信するPHPで書かれたアルゴリズムを持っています。標準の共有ホスティングサーバーでは、計算に約5秒かかります。私の質問は - どのように私は(もちろんアルゴリズム自体を変更することなく)スピードアップすることができます専用の/ VPSを、おそらくいくつかのクラウドコンピューティングまたは...?クラウドコンピューティング - PHPとMySQL
あなたの提案は何ですか?
編集:それはダイクストラアルゴリズム公共交通機関です。私は3500のユニークな停止点を持っています。
要するに、アクティブストップ、前回の停止、lineToStop、totalTime、travelTimeなどを記録するために複数の配列があります。私はストップの数をループし、ストップのIDを取得し、他のストップ(そのアクティブなストップの時間に基づいて)への接続を構築し、ストップのサイズを再びループして、最も低い値を持つものを見つけ出し、アクティブにしてもう一度続行します。
は、私はそれはとてもoptimizatio問題だ実現 - >Dijkstra algorithm optimization/caching
もっと詳細な説明がない限り、私の最初の提案は、あなたのテーブルをMySQL側で最適化できましたか?つまりインデックスなどですか? – Brian
テーブルに正しいインデックスを定義していないため、9/10回のクエリが遅いです。どのようなホスティングでデータベースを実行するかは問題ではなく、適切なスキーマを作成してクエリをプロファイルする必要があります。 –
@Dan Grossman:またはタイトなループで実行される高速クエリです:for($ i = 1; $ i <100000; $ i ++){mysql_query( "select id from blah"); } 'または、共有ホスティングがオーバーロードされています。またはパイプが薄すぎる。知るか? (一般的には、最適化されていないクエリは非常に一般的です。はい) – Piskvor