redis에서 만든 메시지 대기열을 동시에 읽기 위해 여러 프로세스를 만들었습니다. 이로 인해 읽기 충돌이 발생합니까? 이유는 무엇입니까?
天蓬老师2017-04-27 09:05:23
Redis 자체는 대기열 읽기 및 쓰기의 상호 배제를 보장합니다. Redis는 단일 스레드이며 대략 다음과 같이 작동합니다. 다중 프로세스 읽기는 실제로 여러 읽기 요청 패킷을 병렬로 보낼 수 있습니다. 이러한 요청 패킷은 Redis의 소켓 버퍼에 도착하여 잠금 없이 요청에 순차적으로 응답합니다. 어느 날 redis가 멀티스레딩으로 변경되면 큐를 읽을 때 아무 일도 일어나지 않도록 뮤텍스를 잠글 수도 있습니다.