0

Rails 3.2 アプリには、外部 API から情報を取得するビューがあります。接続が遅い場合、これによりページの読み込み時間が大幅に短縮され、ユーザー エクスペリエンスに影響します。

これを非同期プロセスに移動して、ページの残りの部分が読み込まれ、外部情報がフェッチされて利用可能になった後でレンダリングされるようにするにはどうすればよいですか。

外部データは大きくて複雑で、データベースや変数にキャッシュするのには適していないと思います。

私はdelayedjobや同様の宝石を知っていますが、これらはビューよりもデータベースメソッドをキューに入れるのに適しているようです.

他にどのようなオプションがありますか?

4

1 に答える 1

1

大規模なデータ セットは、ローカル サーバーでのキャッシュに最適なようです。

長いリクエストは Rails プロセス/スレッドをロックし、API 呼び出しが完了するのを待っている間は他のリクエストを処理できないことに注意してください。

とはいえ、ページの残りの部分が読み込まれたら、いつでも Ajax リクエストをトリガーして発生させることができます。

于 2013-05-12T12:34:57.523 に答える