2016-09-04 2 views
0

레디 스에 좀 초보자에 레디 스 클러스터 대 레디 스에 동작을 명령 난 '키를 명령을 사용하여 로컬 &을 레디 스를 실행 해요 때 * '- 시스템의 모든 키를 볼 수 있습니다. 괜찮습니다. 설명서에 따라.키</p> <p>내가 레디 스에 이상한 행동 .. 가 나타났습니다 ... AWS

나는 명령 '키 *'을 사용하여 AWS &에 Elasticache \ 클러스터 모드에서 레디 스를 실행할 때 - 나는 단지 3 개 빨강 서버에서 '1) "ElastiCacheMasterReplicationTimestamp을"' 를 얻을. 누락 된 정보를 찾기 위해 다른 명령을 시도했지만 아무 소용이 없습니다. 우리 app \ server가 정상적으로 작동하고있어 무언가가 제대로 작동하고 있지만 어디서 무엇이 있을까요? 설명서를 읽었지만 이에 대해 아무 것도 찾을 수 없습니다.

누구든지 설명 할 수 있습니까? 많은 감사.

답변

0

KEYS 명령은 Redis Cluster에서 지원되지 않습니다. 하나의 Redis 인스턴스에만 KEYS 명령을 보낼 수 있습니다.

프로덕션 환경에서 KEYS 명령을 사용하는 것은 좋지 않습니다. 특히 Redis에서 너무 많은 키가있는 경우 (오랫동안 Redis를 차단할 것입니다).

당신이 당신의 레디 스 클러스터에서 모든 키를 얻기 주장하는 경우

, 당신은 스스로를 구현해야하고, 나는 그것이 ElasticCache 설정을 가리키고 보장하기 위해 응용 프로그램의 구성을 확인하는 것이 좋습니다 an example

+0

참조 및 설명해 주셔서 감사합니다. 도움이되었다. 건배! – Busted

+0

ElasticCache는 Redis 클러스터 모드가 아닙니다. Amazon에서 제공하는 "Redis 호환"서비스입니다. 키가 반환된다는 사실은 ElasticCache가 지원한다는 것을 알려주지 만, 예 j 키를 실행하는 것은 끔찍한 생각입니다. –

+0

@ TheRealBill 지적 해 주셔서 감사합니다! 나는 ElasticCache에 익숙하지 않다. 클러스터 모드에 대한 KEYS 명령을 거부하고 사용자 정의 된 정보를 반환한다고 생각했습니다. –

0

있다. Redis 클러스터와 ElasticCache는 다른 것들입니다. 따라서 키 명령을 지원하는지 여부는 부적절합니다. ElasticCache가 Redis 호환 서버로서 keys 명령을 지원하지 않으면 불완전한 키 목록이 아닌 오류를 반환합니다.

키에 만료 집합이있는 경우 만료되었으므로 볼 수 없었을 수 있습니다. 그러나 다른 서버와 대화하고 있거나 단순히 오류를 삼킬 수도 있습니다. 우리는 그렇게 할 방법이 없습니다.

그러나 명령이 실제로 실행 중인지 확인하려면 info commandstats과 같은 info 명령과 하위 명령을 사용할 수 있습니다. 앱에서 사용하는 명령이 표시되지 않으면 앱이 해당 앱과 대화 중이 아닙니다.