He estado construyendo aplicaciones de rieles por un tiempo, pero desafortunadamente para mí, ninguna de mis aplicaciones ha tenido una gran cantidad de datos o tráfico. Pero ahora tengo uno que está ganando fuerza. Así que estoy buceando de cabeza para escalar y optimizar mi aplicación.Rails 3 Índices de base de datos y otra optimización
Parece que el primer y más fácil paso para hacer esto es con los índices de la base de datos. Tengo una gran lista de índices que deberían cubrir casi todas mis consultas, pero cuando los agregué a mi base de datos a través de migraciones, solo me llevó unos segundos agregarlos. Por alguna razón, pensé que tendrían que revisar todas mis entradas (de las cuales hay miles) e indexarlas.
¿Significa esto que mis índices no se han aplicado a mis datos ya existentes? ¿Se agregarán solo a las nuevas entradas?
Además, Estoy buscando en otras soluciones de escala, tales como memcached, y todo alrededor de adelgazar mis consultas, etc.
Si alguien me puede apuntar a algunos buenos recursos para optimizar mis carriles 3 aplicación que lo haría en gran medida ¡lo aprecio!
Gracias!
EDIT:
Gracias por todas las grandes respuestas con respecto a los índices de base de datos! ¿Qué más debería estar mirando en términos de optimizar y escalar mi aplicación? Memcached? ¿Qué tiene la mejor relación impulso/esfuerzo de rendimiento en términos de optimización?
También revisa 'sidekiq' como una alternativa relativamente mejor (más eficiente, etc.) a' delayed_jobs' y está constantemente en desarrollo. – Ameen
De acuerdo con @Ameen --- sidekiq es de lejos la mejor opción en la actualidad, con Resque un segundo. (Mi respuesta original fue en mayo de 2011, las cosas han cambiado desde entonces) –