Pregunta

He oído de Redis-cache pero ¿cómo funciona exactamente? ¿Se utiliza como una capa entre Django y mis RDBMS, al almacenar en caché las consultas RDBMS de alguna manera?

O se supone que debe ser utilizado directamente como base de datos? Cosa que dudo, ya que la página de GitHub no cubre los datos de acceso, ninguna configuración .. sólo le dice a establecer alguna propiedad config.

¿Fue útil?

Solución

Este módulo Python para Redis tiene un ejemplo de uso claro en el readme: http://github.com/ andymccurdy / redis-py

Redis está diseñado para ser un caché de memoria RAM. Es compatible con GET básica y juego de llaves más el almacenamiento de colecciones tales como diccionarios. Puede almacenar en caché las consultas RDBMS mediante el almacenamiento de su producción en Redis. El objetivo sería acelerar su sitio de Django. No empiece a usar Redis o cualquier otro caché hasta que necesite la velocidad. - No prematuramente a optimizar

Otros consejos

El hecho de que las tiendas Redis cosas en memoria no significa que está destinado a ser una memoria caché. He visto personas que lo usan como un almacenamiento persistente para datos.

Que se puede utilizar como una memoria caché es un indicio de que es útil como un almacenamiento de alto rendimiento. Si el sistema se cae Redis pesar de que podría perder datos que no se ha grabado de nuevo en el disco nuevo. Hay algunas maneras de mitigar tales peligros, por ejemplo, una réplica de reserva en caliente. Si los datos son 'misión crítica', como si se ejecuta un banco o una tienda, Redis podría no ser la mejor opción para usted. Pero si se escribe un juego de alto tráfico con datos en tiempo real persistentes o algunas cosas, la interacción social y administrar la probabilidad de pérdida de datos a ser bastante aceptable, entonces Redis podría ser digno de una mirada.

De todos modos, los restos de punto, sí, Redis se pueden utilizar como una base de datos.

Redis es básicamente un 'en memoria' KV tienda con un montón de campanas y silbatos. Es extremadamente flexible. Se puede utilizar como un almacén temporal, como una memoria caché, o un almacén permanente, como una base de datos (con salvedades como se ha mencionado en otras respuestas).

Cuando se combina con la mejor Django mayoría de los casos / uso común para Redis es, probablemente, a la caché 'respuestas' y sesiones.

Hay un backend aquí https://github.com/sebleier/django-redis- cache / y excelente documentación en la documentación de Django aquí: https: // docs.djangoproject.com/en/1.3/topics/cache/ .

Recientemente he comenzó a usar https://github.com/erussell/django-redis -status para monitorear mi caché - que funciona a las mil maravillas. (Configurar MaxMemory en redis o los resultados no son tan muy útil).

También puede utilizar Redis como una cola de tareas distribuidas en su aplicación Django. Se puede utilizar como un intermediario de mensajes para El apio o Python RQ .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top