2012-11-07 3 views
1

J'ai des rails (v3.0.9) avec mysql fonctionnant sur Redhat open shift.Redhat openshift - rails réponse mysql prend plus de 20sec

J'ai vu qu'il faut environ 35-40 sec pour obtenir une réponse JSON composée de tous les enregistrements d'une seule table. Il y a environ 10000 enregistrements dans cette table unique.

Y at-il un moyen de le rendre plus rapide? Pour obtenir la réponse au moins dans 10sec.

Répondre

2

D'abord, je chercherais à paginer les résultats. Lorsque vous demandez une réponse JSON, je suppose que vous utilisez AJAX pour charger ces résultats?

Bien que je ne l'utilise pas auparavant, je crois que vous pouvez «streamer» des enregistrements pour les grandes tables en utilisant la gem mysql2. https://github.com/brianmario/mysql2#streaming. Avant cela, cependant, je paginais. Pas besoin de charger 10k dossiers sur une page en une seule fois.

De même, mettez en cache les résultats et invalidez le cache lorsque des données importantes sont modifiées.

Questions connexes