Redis 설치 및 설정 안내

5961 단어 redis
redis 를 사용 하여 아주 좋 은 문 서 를 보 았 습 니 다. 기록 을 옮 겼 습 니 다.http://www.php100.com/html/webkaifa/PHP/PHPyingyong/2011/0406/7873.html
redis 는 고성능 키 - value 데이터베이스 입 니 다.redis 의 등장 은 memcached 와 같은 keyvalue 저장 의 부족 을 어느 정도 보상 하고 일부 상황 에서 관계 데이터 베이스 에 좋 은 보충 역할 을 할 수 있 습 니 다.Python, Ruby, Erlang, PHP 클 라 이언 트 를 제공 하여 사용 하기에 편리 합 니 다.문 제 는 이 프로젝트 가 아직 새 롭 고 안정 적 이지 않 을 수도 있 으 며 실제 대형 시스템 에서 응 용 된 사례 가 없다 는 것 이다.그 밖 에 mc 에서 대량 get 이 부족 한 것 도 비교적 큰 문제 이다. 처음부터 끝까지 대량으로 얻 는 것 은 여러 번 얻 은 네트워크 비용 과 다르다.
성능 테스트 결과:
SET 작업 은 초당 110000 회, GET 작업 은 초당 81000 회, 서버 설정 은 다음 과 같 습 니 다.
Linux 2.6, Xeon X3320 2.5Ghz.
stackoverflow 사 이 트 는 Redis 를 캐 시 서버 로 사용 합 니 다.
설치 과정:
Redis 는 고급 key - value 데이터베이스 입 니 다.이것 은 memcached 와 유사 하지만 데 이 터 는 지속 적 이 고 지원 하 는 데이터 형식 이 풍부 합 니 다.문자열, 링크, 집합 과 질서 있 는 집합 이 있 습 니 다.서버 에서 집합 을 계산 하 는 것 을 지원 하고, 제출 과 보충 집합 (difference) 등 을 지원 하 며, 다양한 정렬 기능 도 지원 합 니 다.그래서 레 디 스 도 데이터 구조 서버 로 볼 수 있다.
Redis 의 모든 데 이 터 는 메모리 에 저 장 된 다음 비정 기적 으로 비동기 방식 으로 디스크 에 저 장 됩 니 다 (이것 은 '반 지구 화 모드' 라 고 합 니 다).모든 데이터 변 화 를 하나의 append only file (aof) 에 기록 할 수도 있 습 니 다.
최신 버 전 다운로드
wget http://redis.googlecode.com/files/redis-2.0.0-rc4.tar.gz
2. 압축 풀기
tar redis-2.0.0-rc4.tar.gz
3. C / C + + 의 컴 파일 구성 요 소 를 설치 합 니 다 (필요 하지 않 음)
apt-get install build-essential
번역
cd redis-2.0.0-rc4 make
make 명령 이 실 행 된 후 현재 디 렉 터 리 에서 실행 가능 한 파일 을 생 성 합 니 다. 각각 redis - server, redis - cli, redis - benchmark, redis - stat 입 니 다. 그들의 역할 은 다음 과 같 습 니 다.
redis - server: Redis 서버 의 daemon 시작 프로그램 redis - cli: Redis 명령 행 조작 도구 입 니 다.물론 telnet 로 일반 텍스트 프로 토 콜 에 따라 조작 할 수도 있 습 니 다 redis - benchmark: Redis 성능 테스트 도구, Redis 가 시스템 및 설정 에서 의 읽 기와 쓰기 성능 테스트 redis - stat: Redis 상태 검사 도구, Redis 현재 상태 파라미터 및 지연 상 태 를 검사 할 수 있 습 니 다. 
뒤에 이 몇 가지 명령 의 설명 이 있 을 것 이다. 당연히 인터넷 에서 베 낀 것 이다.
5. 프로필 수정
/etc/sysctl.conf
덧붙이다
vm.overcommit_memory=1
설정 새로 고침 이 적 용 됩 니 다.
sysctl vm.overcommit_memory=1 
추가 소개:
 **메모리 상태 가 부족 하면 커 널 인 자 를 설정 해 야 합 니 다: echo 1 > / proc / sys / vm / over commitmemory
 커 널 매개 변 수 는 다음 과 같다.
overcommit_메모리 파일 은 메모리 할당 정책 을 지정 합 니 다. 값 은 0, 1, 2 일 수 있 습 니 다.0. 커 널 이 사용 가능 한 메모리 공급 프로 세 스 가 있 는 지 확인 합 니 다.사용 가능 한 메모리 가 충분 하 다 면 메모리 신청 이 허 용 됩 니 다.그렇지 않 으 면 메모리 신청 이 실 패 했 고 오 류 를 응용 프로 세 스에 되 돌려 줍 니 다.1. 커 널 은 현재 메모리 상태 가 어떻든 간 에 모든 물리 적 메모 리 를 분배 할 수 있 음 을 나타 낸다.2. 커 널 은 모든 물리 적 메모리 와 교환 공간 을 합 친 메모 리 를 초과 할 수 있 음 을 나타 낸다.
 **redis. conf 설정 파일 (/ etc / redis. conf) 을 편집 하고 필요 에 따라 적당 한 조정 을 합 니 다. 예 를 들 어 daemonize yes \ # 데 몬 으로 전환 하지 않 으 면 시작 할 때 5 초 마다 모니터링 정 보 를 한 줄 씩 출력 합 니 다 save 60 1000 \ # 변경 횟수 를 줄 일 수 있 습 니 다. 사실 이것 은 상황 에 따라 max memory 25600000 \ # 256 M 메모 리 를 할당 할 수 있 습 니 다.
Redis 를 성공 적 으로 설치 한 후에 저 희 는 redis - server 를 직접 실행 하면 Redis 를 실행 할 수 있 습 니 다. 이 때 는 기본 설정 에 따라 실 행 됩 니 다 (기본 설정 은 배경 이 아 닙 니 다).우 리 는 Redis 가 우리 의 요구 에 따라 실행 되 기 를 바 랍 니 다. 우 리 는 설정 파일 을 수정 해 야 합 니 다. Redis 의 설정 파일 은 바로 우리 위의 두 번 째 cp 에서 작 동 하 는 redis. conf 파일 입 니 다. 현재 이것 은 우리 가 / usr / local / redis / etc / 디 렉 터 리 로 복사 되 었 습 니 다.그것 을 수정 하면 우리 의 server 를 설정 할 수 있 습 니 다.어떻게 수정 합 니까?다음은 redis. conf 의 주요 설정 매개 변수의 의미 입 니 다.
daemonize: 나중에 daemon 방식 으로 실행 할 지 여부 pidfile: pid 파일 위치 port: 감청 포트 번호 timeout: 시간 초과 요청 loglevel: log 정보 등급 logfile: log 파일 위치 databases: 데이터베이스 오픈 수량 save * *: 스냅 샷 을 저장 하 는 빈도, 첫 번 째 * 는 시간 을 표시 하고 세 번 째 * 는 쓰기 동작 을 몇 번 수행 하 는 지 표시 합 니 다.일정 시간 동안 일정 수량의 쓰기 작업 을 수행 할 때 스냅 샷 을 자동 으로 저장 합 니 다.여러 조건 을 설정 할 수 있 습 니 다.
rdbcompression: 압축 사용 여부 dbfilename: 데이터 스냅 샷 파일 이름 (파일 이름 일 뿐 디 렉 터 리 포함 되 지 않 음) dir: 데이터 스냅 샷 의 저장 디 렉 터 리 (이것 은 디 렉 터 리) appendonly: appendonlylog 를 열 지 여부 입 니 다. 열 리 면 매번 쓰기 동작 에 log 를 기록 합 니 다. 이것 은 데이터 위험 저항 능력 을 향상 시 키 지만 효율 에 영향 을 줍 니 다.
appendfsync: appendonlylog 는 디스크 에 어떻게 동기 화 합 니까?
 
다음은 약간 수 정 된 프로필 내용 입 니 다.
daemonize yes
pidfile /usr/local/redis/var/redis.pid
port 6379
timeout 300
loglevel debug
logfile /usr/local/redis/var/redis.log
databases 16
save 900 1
save 300 10
save 60 10000
rdbcompression yes
dbfilename dump.rdb
dir /usr/local/redis/var/
appendonly no
appendfsync always
glueoutputbuf yes
shareobjects no
shareobjectspoolsize 1024

 
위 내용 을 redis. conf 라 고 쓰 고 / usr / local / redis / etc / 디 렉 터 리 에 저장 합 니 다.
그리고 명령 행 에서 실행:
1
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf

백 스테이지 에서 redis 서 비 스 를 시작 할 수 있 습 니 다. 이 때 통과 합 니 다.
1
telnet 127.0.0.1 6379

당신 의 redis 서비스 에 연결 할 수 있 습 니 다.
6. 서비스 시작 및 검증
시작 서버
 
./redis-server 
혹시 
$redis-server /etc/redis.conf  
성공 적 으로 시 작 했 는 지 확인 
$ ps -ef | grep redis   
혹시 
./redis-cli ping  PONG
7. 시작 명령 행 클 라 이언 트 할당 값
 
redis-cli 
set mykey somevalue
 
./redis-cli get mykey
 
8. 서비스 종료
$ redis-cli shutdown     
\ # 지정 한 포트 의 redis - server 를 닫 습 니 다.  
$redis-cli -p 6380 shutdown 
9. 클 라 이언 트 도 telnet 형식 으로 연결 할 수 있 습 니 다.
[root@dbcache conf]# telnet 127.0.0.1 6379  Trying 127.0.0.1...  Connected to dbcache (127.0.0.1).  Escape character is '^]'.  set foo 3  bar  +OK  get foo  $3  bar  ^]  telnet> quit  Connection closed.

좋은 웹페이지 즐겨찾기