English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Redis는 클라이언트에서의 연결을 받기 위해 TCP 포트나 Unix 소켓을 통해 감지하고, 연결이 성립되면 Redis 내부에서 다음과 같은 작업을 수행합니다:
먼저, 클라이언트 소켓은 비阻塞 모드로 설정됩니다. 왜냐하면 Redis는 비阻塞 멀티로드 모델을 사용하기 때문입니다
그런 다음 이 소켓에 TCP_NODELAY 속성을 설정하여 Nagle 알고리즘을 비활성화합니다
그런 다음 이 클라이언트 소켓의 데이터 전송을 감지하는 읽을 수 있는 파일 이벤트를 생성합니다
Redis에서2.4 에서는 최대 연결 수가 코드에 직접 고정되어 있으며,2.6버전에서 이 값이 설정 가능하게 되었습니다
maxclients의 기본 값은 10000, 또는 redis.conf에서 이 값을 수정할 수 있습니다
config get maxclients 1) "maxclients" 2) "10000"
다음 예제에서는 서비스 시작 시 최대 연결 수를 설정하였습니다 100000:
redis-서버 --maxclients 100000
S.N. | 명령어 | 설명 |
---|---|---|
1 | CLIENT LIST | redis 서비스에 연결된 클라이언트 목록을 반환합니다 |
2 | CLIENT SETNAME | 현재 연결의 이름을 설정합니다 |
3 | CLIENT GETNAME | CLIENT SETNAME 명령어로 설정된 서비스 이름을 가져옵니다 |
4 | CLIENT PAUSE | 클라이언트 연결 일시 중지, 일시 중지 시간은 밀리초로 지정 |
5 | CLIENT KILL | 클라이언트 연결 닫기 |