2014-11-19 6 views
4

내 프로그램과 redis-server 간의 상호 작용 수를 줄이기 위해 파이프 라인을 사용하고 싶습니다.
파이프 라인에 많은 명령을 설정할 수 있지만 파이프 라인에서 설정할 수있는 최대 명령 수를 설명하는 문서를 찾을 수 없습니다.redis-py 파이프 라인에는 몇 개의 명령이 있습니까?

어떤 조언이 있습니까? 미리 감사드립니다.

답변

5

최대치는 확실치 않지만, 경우에 대비하여 도달하고 싶지 않습니다.

대부분의 경우 파이프 라인의 크기를 100-1000 개의 작업으로 제한하면 최상의 결과를 얻을 수 있습니다. 그러나 보내는 일반적인 요청을 포함하는 벤치 마크 연구를 수행 할 수 있습니다. 파이프 라이닝 요청은 일반적으로 좋지만 파이프 라인 요청이 모두 처리되고 클라이언트가 모든 요청에 ​​대해 긴 응답을 기다릴 때까지 응답은 Redis 메모리에 보관됩니다.

동시 연결, 파이프 라인 요청 및 Redis 메모리와 같은 달콤한 지점을 찾아야합니다.

클라이언트는 파이프 라인의 마지막 쿼리가 Redis로 전송 될 때까지 응답 읽기를 시작하지 않습니다. 파이프 라인이 너무 길면 사물을 막을 가능성이 있습니다.

redis-benchmark 또는 memtier_benchmark을 사용할 수 있습니다. Here's에서 memtier_benchmark에 대한 자세한 설명과 지침을 제공합니다.

파이프 라인 된 요청 수와 연결 수를 찾으면 앱에 redis-py 클라이언트로 구현해야합니다.

+0

여기에서 가장 중요한 점은 자신의 유스 케이스를 테스트하는 것입니다. 다양한 시나리오에서 가장 잘 작동하는 범위를 많이 보았습니다. 나는 어떤 사람들에게는 50 세 이하, 다른 사람들에게는 2,000 명이 넘는 최고의 숫자를 보았다. –

관련 문제