Google App Engine의 모듈/서비스의 모든 활성 인스턴스에 요청을 보낼 수있는 방법이 있습니까?GAE가 모든 활성 인스턴스에 요청을 전송합니다.
모든 활성 인스턴스 ID 목록을 얻을 수 있다면 각 인스턴스에 대해 https://instance-dot-version-dot-service-dot-app-id.appspot.com과 같은 요청을 할 수 있습니다.
아주 특별한 경우에 일부 메모리의 전역 변수 (데이터 저장소 또는 memcache 및 시간으로 요청을 저장)를 변경하려면이 설정이 필요합니다. 그들은 내가 분명히 memcache를 사용하는 것을 선호 자주 변경 ...
Dan이 답변을 게시했지만 실제로 얻는 것이 가장 좋은 방법인지 확신 할 수 없습니다. 너는 더 자세히 설명 할 수 있다고 생각하니? – BrettJ
인스턴스의 RAM 메모리에 MEMCACHE 또는 DATASTORE (또는 다른 NSQL) 플래그를 사용할 수 있습니다. 해당 플래그의 값을 가져 오는 시간은 선택한 저장소에 따라 0.001, 2 또는 50ms (예) 일 수 있습니다. 내 응용 프로그램의 모든 요청에 해당 플래그를 읽으면 인스턴스의 RAM 메모리에서 읽으면 돈과 시간을 절약 할 수 있습니다 (하루 10M 요청 및 숫자 수행). 인스턴스가 시작되면 Datastore에서 값을 읽어 전역 변수로 RAM에 저장합니다. 그러나 플래그가 변경되면 모든 설치에 메시지를 보내 RAM의 플래그 값을 업데이트 할 방법을 찾고 있습니다. –
내 previos 예제에서 해당 플래그는 한 달에 한 번만 변경 될 수도 있고 일부 Google 서비스가 실패한 경우 (예 : GAE 작업 대기열)에도 발생할 수 있지만 순간적으로 우리는 즉각적인 전파가 필요합니다. 현재의 해결책은 memcache를 플러시하고 앱의 마지막 버전을 다시 업로드하는 것입니다. 따라서 모든 인스턴스가 새 플래그 값으로 초기화되고 다시 시작됩니다.이 작업을 수행하는 좀 더 우아한 방법을 찾고 있습니다. 나는 AUTOMATIC SCALING INSTANCES에 그것을 필요로한다. –