NoSQL
Selon les besoins, il est possible d'utiliser des bases de données NoSQL (base de données non relationnelles).
Dans les raisons qui peuvent pousser à utiliser une base de données NoSQL, on peut citer :
- besoin de scalabilité horizontale (ajout de serveurs pour augmenter la capacité de la base de données) :
- MongoDB, CouchDB, Cassandra, etc.
- besoin de flexibilité dans le schéma de la base de données :
- MongoDB, CouchDB, etc.
- besoin de performances élevées pour des opérations de lecture/écriture simples (cache, etc..) :
- Redis, etc.
Redis
Exemple d'utilisation de Redis comme cache pour une application web en python.
import redis
# Connexion à Redis
rconn = redis.Redis(host='localhost', port=6379, db=0)
@route('/vue_lourde_a_afficher')
def vue_lourde():
# Vérification si le résultat est déjà en cache
result = rconn.get('clef_cache_vue_lourde')
if result is None:
# Si le résultat n'est pas en cache, on effectue le calcul
result = calcul_lourd()
# On met le résultat en cache pour 10 minutes
rconn.setex('clef_cache_vue_lourde', 600, result)
return result