https://github.com/edgar-code-repository/django_redis_caching
Aplicación web desarrollada con Django, PostgreSQL y Redis.
https://github.com/edgar-code-repository/django_redis_caching
Last synced: 6 months ago
JSON representation
Aplicación web desarrollada con Django, PostgreSQL y Redis.
- Host: GitHub
- URL: https://github.com/edgar-code-repository/django_redis_caching
- Owner: edgar-code-repository
- Created: 2019-05-21T21:15:07.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2019-11-02T17:17:35.000Z (over 6 years ago)
- Last Synced: 2025-01-23T04:29:34.504Z (over 1 year ago)
- Language: HTML
- Homepage:
- Size: 892 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
THE GEO APP (WITH REDIS)
--------------------------------------------------------------------------------------------------------------------
Aplicación web desarrollada con Django 2.2 que almacena información de continentes, paises y ciudades.
La aplicación se conecta a una base de datos PostgreSQL utilizando las librerias psycopg2 y dj_database_url.
Se utiliza la librería django-redis para manejar la información de continentes, paises y ciudades en cache
Redis, disminuyendo la cantidad de accesos a base de datos.
--------------------------------------------------------------------------------------------------------------------
**Se debe definir la variable de ambiente "DATABASE_URL" que es utilizada**
**por la librería dj-database-url para acceder a la base de datos:**
```
DATABASE_URL="postgres://user:password@localhost/nombre-db"
```
**Configuración de base de datos PostgreSQL en archivo setting.py:**
```
import dj_database_url
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
}
}
DATABASES['default'] = dj_database_url.config(conn_max_age=600)
```
--------------------------------------------------------------------------------------------------------------------
**Configuración de Redis en archivo settings:**
```
CACHES = {
'default': {
'BACKEND': 'django_redis.cache.RedisCache',
'LOCATION': 'redis://127.0.0.1:6379/',
'OPTIONS': {
'CLIENT_CLASS': 'django_redis.client.DefaultClient',
}
}
}
```
--------------------------------------------------------------------------------------------------------------------
Pantalla principal de la aplicación:

--------------------------------------------------------------------------------------------------------------------
Pantalla principal de la sección Continents:

--------------------------------------------------------------------------------------------------------------------
Se revisan las llaves almacenadas en Redis por medio de redis-cli:

--------------------------------------------------------------------------------------------------------------------
Si bien la cantidad de registros en la vista continentes es pequeña, al realizar la comparación de rendimiento
con loadtest, la cache tiene una mejor performance que el acceso a base de datos.
Rendimiento usando solo base de datos:

Rendimiento usando solo cache Redis:

--------------------------------------------------------------------------------------------------------------------