๐[Django] ์ด๋ฉ์ผ ์ธ์ฆ ๊ธฐ๋ฅ Redis ์ฌ์ฉํ๊ธฐ
Redis ์ค์ ํ๊ธฐ
settings.py
์ ์๋์ ๊ฐ์ด Redis
์ค์ ์ ์ถ๊ฐํ๋ค.
CACHES = {
"default": {
"BACKEND": "django_redis.cache.RedisCache",
"LOCATION": "redis://127.0.0.1:6379",
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient",
},
"TIMEOUT": 300, # ์บ์ ๊ธฐ๋ณธ ์ ํจ ์๊ฐ
}
}
RedisCache
๋ฅผ ์ฌ์ฉํ๊ณ , ์บ์์ ์ ์ฅ๋๋ ๊ฐ์ 5๋ถ(300์ด)์ ํ์์์
์ ๋ถ์ฌํจ.
์คํ ๋ฐฉ๋ฒ
$ python manage.py runserver
์ด๋ฌ๋ฉด ์๋ฒ๊ฐ ์คํ๋๊ณ ..
๋จผ์ Redis
๋ฅผ ๋ค์ด๋ฐ๊ณ , Django์์ ์ฌ์ฉํ๊ธฐ ์ํด Django-Redis
๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํจ.
$ pip install django-redis
๋ ๋ค๋ฅธ ํฐ๋ฏธ๋์ ์ด์ด์ Redis
๋ฅผ ์ด์ด์ค๋ค.
์๋๋ Windows
๊ธฐ์ค
redis-server ์ด๊ธฐ
[Redis ์ค์น ๊ฒฝ๋ก]$ .\redis-server.exe
[20748] 08 Jan 18:26:12.431 # Warning: no config file specified, using the default config. In order to specify a config file use C:\Users\Aptimizer\Redis-x64-3.0.504\redis-server.exe /path/to/redis.conf
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 3.0.504 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 20748
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
[20748] 08 Jan 18:26:12.434 # Server started, Redis version 3.0.504
[20748] 08 Jan 18:26:12.434 * DB loaded from disk: 0.000 seconds
[20748] 08 Jan 18:26:12.434 * The server is now ready to accept connections on port 6379
redis-cli ์ด๊ธฐ
[Redis ์ค์น ๊ฒฝ๋ก]$ .\redis-cli.exe -h 127.0.0.1 6379
127.0.0.1:6379>
redis-cli
์์ ์บ์๋ ๋ฐ์ดํฐ๋ฅผ ํ์ธํ ์ ์์
์ด ์ ๋๋ง ์ด์ด๋์ผ๋ฉด, ์ด๋ฉ์ผ ์ธ์ฆ ์ฝ๋ ๋ฐ์ก ๊ธฐ๋ฅ์ ์ ์์ ์ผ๋ก ๋์ํจ
์ธ์ฆ ์ฝ๋ ํ์ธ ๋ฐฉ๋ฒ?
์ Redis๋ฅผ ์ฌ์ฉํ ๊น?
- ์ด๋ฉ์ผ ์ธ์ฆ ์ฝ๋๋
์งง์ ์ ํจ ๊ธฐ๊ฐ
๋์๋ง ํ์ํ๋ค๋ ๋ถ๋ถ- ์ด๋ฐ ์์ ๋ฐ์ดํฐ๋ฅผ DB์ ์ ์ฅํ๋ ๊ฒ์ ๋นํจ์จ์
- Redis์ ๊ฐ์
์ธ๋ฉ๋ชจ๋ฆฌ DB
์ ์ ์ฅํ๋ ๊ฒ์ด ํจ์จ์
- ๋ฐ์ดํฐ๊ฐ ๋ง๋ฃ๋๋ฉด ์๋์ผ๋ก ์ญ์ (
EXPIRE
์ค์ )๋๋ฏ๋ก, ์ถ๊ฐ์ ์ธ ๋ฐ์ดํฐ ์ ๋ฆฌ๊ฐ ํ์ ์๋ค๋ ์ฅ์ - ๊ณ ์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ
- Redis๋ ์ธ๋ฉ๋ชจ๋ฆฌ DB๋ผ์ ์ผ๋ฐ DB๋ณด๋ค ์๋๊ฐ ํจ์ฌ ๋น ๋ฆ
- ์ด๋ฉ์ผ ์ธ์ฆ์ ๋น ๋ฅธ ์๋๊ฐ ์ค์ํ๊ธฐ ๋๋ฌธ โ ์ฌ๋ฌ ์ฌ์ฉ์๊ฐ ๋์์ ์ธ์ฆ ์ฝ๋๋ฅผ ์์ฒญํ๋ ๊ฒฝ์ฐ..
- DB ๋ถ๋ด ๊ฐ์
- Redis๋
<KEY:VALUE>
ํ์์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์, ๋ณ๋์ DB ํ ์ด๋ธ ์ค๊ณ ํ์ ์์ - ์ธ์ฆ ์ฝ๋์ ์ด๋ฉ์ผ๋ง ์ ์ฅ โ ๋ถ๋ด ๊ฐ์
- Redis๋
๋๊ธ๋จ๊ธฐ๊ธฐ