Django 프로젝트는 Memcached와 Redis 캐시를 어떻게 구성합니까?어떤 것을 선택하는 것이 더 우세합니까?
Memcache 캐시
Memcache는 고성능 분포식 메모리 대상 캐시 시스템으로 Django가 원래 지원하는 가장 빠르고 효과적인 캐시 시스템입니다.Memcached의 장점은 속도가 빠르고 분포식 캐시에 속하며 여러 서버에서 동시에 실행할 수 있다는 것이다.
1단계:Memcached 설치
윈도우즈 시스템: 홈페이지에서 다운로드하고 압축을 풀고 설치하면 됩니다.
Linux 시스템: Ubuntu 시스템은 sudo apt-get install libevent ibevevent-dev를 사용하여Memcached 의존 환경을 설치하고 sudo apt-get installmemcached를 사용하여memcached를 설치해야 합니다.
2단계:Memcached 시작
# Linux -
/usr/local/memcached/bin/memcached -p 11211 -m 64m -vv
# Linux -
/usr/local/memcached/bin/memcached -p 11211 -m 64m -d
3단계:pip설치python-memcached
Python이memcached 데이터베이스를 조작하려면 python-memcached나pylibmc를 설치해야 합니다. 전자를 추천합니다.
pip install pyhon-memcached
4단계:memcached를 Django 캐시 백그라운드로 설정
# , localhost
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': '127.0.0.1:11211',
}
}
# unix soket
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': 'unix:/tmp/memcached.sock',
}
}
# , , 。
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': [
'172.19.26.240:11211',
'172.19.26.242:11211',
]
# , , :
'LOCATION': [
('172.19.26.240:11211',5),
('172.19.26.242:11211',1),
]
}
}
Redis 캐시
Redis는 현재 가장 빠른 메모리형 비관계형(NosQL) 데이터베이스입니다.Redis는 간단한 키-value 형식의 데이터를 지원할 뿐만 아니라list,set,zset,hash 등 다양한 데이터 구조의 저장도 제공한다.
1단계: Redis 설치
2단계: Redis 서비스 시작
# Windows :cmd redis , redis
redis-server.exe redis.windows.conf
# Linux : redis redis
redis-server /etc/redis/redis.conf
# redis , ( )
redis-cli.exe -h 127.0.0.1 -p 6379 # windows
redis-cli # linux
참고: 기본적으로 Redis 서버에 액세스하는 데는 암호가 필요하지 않습니다. 다른 서버에서 보안을 강화하기 위해 Redis 서버에 대한 액세스 암호를 설정하는 것이 좋습니다.redis는 기본적으로 이 컴퓨터를 바인딩하기 때문에 첫 번째 단계에서 이 설정을 취소합니다.
#
sudo vim /etc/redis/redis.conf
vim로 이 프로필을 열면 다음 줄을 주석합니다.
# bind 127.0.0.1
그런 다음 로그인 암호를 설정합니다.프로필이 비교적 길기 때문에 명령 모드에서 입력하십시오/requirepass foobared
이 구성 항목을 빠르게 검색합니다.
# , :
#requirepass foobared
# :
requirepass your_pwd #
수정해서 사용합니다redis-server restart
서버를 재부팅하면 구성이 적용됩니다.나중에 다른 서버에서 redis에 접근할 때 설정한 비밀번호를 휴대하면 됩니다.
redis-cli -a your_pwd -h hostip
3단계:pip설치django-redis
Redis를 설치하고 시작하면 pip를 통해django-redis를 설치해야 Django에서 redis 데이터베이스를 조작할 수 있습니다.
pip install django-redis
4단계: Redis를 Django 캐시 백그라운드로 설정
CACHES = {
'default': {
'BACKEND': 'django_redis.cache.RedisCache',
'LOCATION': 'redis://your_host_ip:6379', # redis ip
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient",
"PASSWORD": "your_pwd", #
},
},
}
너는 아직 있을 수 있다settings.py
캐시 기본 만료 시간을 설정합니다 (필수가 아님).
REDIS_TIMEOUT=24*60*60
CUBES_REDIS_TIMEOUT=60*30
NEVER_REDIS_TIMEOUT=365*24*60*60
캐시 설정 성공 여부 테스트
설정을 수정합니다.py에서 캐시에 대한 설정을 한 후, Django 캐시가 성공적으로 설정되었는지 알고 싶을 것입니다.다음 명령을 입력하여 Python의 명령 상호 작용 창을 열 수 있습니다.
python manage.py shell
그리고 다음 명령을 조목조목 입력하여 테스트를 진행한다.만약 오류가 없다면, 캐시 설정이 성공했다는 것을 설명합니다.
from django.core.cache import cache #
cache.set('k1', '555', 60*1) # key k1, 555 , 1
cache.has_key('k1')# key k1
cache.get('k1') # key k1
Memcached vs Redis
Memcached와 Redis는 모두 메모리를 바탕으로 하는 키-값 데이터 저장 시스템으로 속도가 빠르고 분포식 배치를 지원하지만 이들의 차이도 매우 크다.
지금까지 Django 프로젝트에서 Memcached와 Redis 캐시를 어떻게 설정했습니까?어떤 것을 선택하는 것이 더 우세합니까?자세한 내용, 더 많은 Django 프로젝트 설정Memcached와 Redis 캐시에 대한 자료는 저희 다른 관련 글을 참고하세요!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Django 라우팅 계층 URLconf 작용 및 원리 해석URL 구성(URLconf)은 Django가 지원하는 웹 사이트의 디렉토리와 같습니다.그것의 본질은 URL과 이 URL을 호출할 보기 함수 사이의 맵표입니다. 위의 예제에서는 URL의 값을 캡처하고 위치 매개 변수로...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.