を検索するための結果を保存します。このスクリプトでは、通常、関数呼び出しあたり0.3〜0.6秒かかります。だから私は何をしたいのですが、結果をキャッシュして毎回URLを呼び出す必要はありませんか?結果と検索条件をDBに入れるのが最善の方法でしょうか?次に機能が使用される前にそれらがDBに入っていることを確認してくださいベストな方法は、私はこの機能を持っている
どうすれば検索を迅速化し、できるだけ早くページを読み込むことができますか?
を検索するための結果を保存します。このスクリプトでは、通常、関数呼び出しあたり0.3〜0.6秒かかります。だから私は何をしたいのですが、結果をキャッシュして毎回URLを呼び出す必要はありませんか?結果と検索条件をDBに入れるのが最善の方法でしょうか?次に機能が使用される前にそれらがDBに入っていることを確認してくださいベストな方法は、私はこの機能を持っている
どうすれば検索を迅速化し、できるだけ早くページを読み込むことができますか?
これは現実的ですか?私はあなたのアプリケーションが何であるかはわかりませんが、ユーザーが任意のアドレスを入力できるならば、無限の距離のリストがあります。そのような重い計算のための平均0.5秒の待ち時間は非常に速いです。データベース内の何百万ものレコードを掘り起こすことは、そのAPIコールよりも時間がかかります。
しかし、このメソッドは同じパラメータ(つまりアドレス)で呼び出されることがあります。小さなデータベースやJSONファイルを設定することは悪い考えではありません。 JSONはMySQLよりもはるかに高速ですので、実際に結果をキャッシュしなければならない場合は、それを使用します。
このようなことを行うには、name/key value
ストアを使用する傾向があります。
リクエストパラメータとリターンレスポンスだけを格納するテーブルがあります。
Key1 | Key2 | Value |
POSTCODE1 | POSTCODE2 | {response from google} |
Googleに検索する直前に、まずこの表を確認してください。存在する場合は、応答を使用してください。存在しない場合は、ルックアップを行い、データベースに格納します。
私は、Googleが自分のToSでこのデータをキャッシュしてはいけないと言っていると思います。
あなたは結果をRedis(http://redis.io/)に保存することができます。これはMemory Ramのデータベースで、速度には最適です。 :D
"メモ"と呼ばれる非常に一般的なプログラミングテクニックを求めています。 Googleがその言葉を使い、それを実装する方法はたくさんあります。あなたは好きな方法を見つけなければなりません。 – kainaw
@kainawありがとう、私は今ここで戦利品を持っています – Deckerz