1

Google App Engine에서 프로그래밍 방식으로 한 애플리케이션에서 다른 애플리케이션으로 데이터를 전송하는 방법을 구현하고자합니다. database_admin 콘솔에서이 작업을 수행하는 방법이 있지만 프로세스가 매우 비효율적이라는 것을 알고 있습니다.Google App Engine의 엔티티 백업 및 복원

Google Cloud Storage (GCS)를 사용하여이를 구현하고 있지만 데이터를 쿼리하고 GCS에 저장 한 다음 다른 앱에서 GCS를 읽고 복원하는 작업이 포함됩니다. 누군가가 프로그래밍 방식으로 두 응용 프로그램간에 데이터를 전송하는 더 간단한 방법을 알고 있다면 알려주십시오.

감사합니다.

답변

-1

이것이 구체적인 시나리오에 적합한 지 여부는 잘 모르겠지만 Google Cloud Endpoints은 확실히 Google App Engine에서 프로그래밍 방식으로 데이터를 전송하는 간단한 방법입니다.

이것은 Google에서 구현 한 REST 웹 서비스 중 하나이므로 URL을 사용하여 리소스를 공유 할 수 있습니다. 이것은 여전히 ​​실험적인 기술이지만, 나는 그들과 함께 일하면서도 완벽하게 작동합니다. 또한 그들은 GAE 및 Google Plugin for Eclipse과 잘 통합되어 있습니다.

영구적 인 클래스 JDO에서 끝점을 자동으로 생성 할 수 있으며 클라이언트 라이브러리도 자동으로 생성 할 수 있다고 생각합니다 (시도하지는 않았지만).

+0

@earthtrip 말했듯이 내 대답은을 downvoted 된 이유 내가 완벽하다고 생각하기 때문에, 내가 이해가 안 돼요 계정의 세부 사항이 부족하다는 점을 감안할 때 ... – MikO

0

두 App Engine 애플리케이션간에 데이터를 이동하거나 다른 호스팅 시스템으로 이동할 수 있도록 App Engine에서 모든 데이터를 내보내려고하십니까? 귀하의 질문에 귀하가하려는 것을 이해하기에 충분한 정보가 없습니다. 애매한 요구 사항에 따라 일반적으로 데이터를 노출하는 하나의 응용 프로그램과 다른 응용 프로그램에서 데이터를 사용하도록 호출하는 웹 서비스로 처리됩니다. Cloud Endpoints가 투표 결과에 실패한 이유는 확신 할 수 없습니다. JSON 기반 웹 서비스로 데이터를 노출시키는 훌륭한 방법을 제공하기 때문입니다.

귀하가 달성하고자하는 것과 정확히 모의 데이터 샘플과 같은 질문에 세부 정보를 추가하는 것이 좋습니다.

+0

두 응용 프로그램 모두 App Engine에 배포됩니다 (Java 버전 사용). 한 응용 프로그램이 GCS에 쓰고 다른 응용 프로그램에서 읽는 WebServices 방식을 실제로 사용하고 있지만이 경우 성능이 큰 데이터 세트에는 충분하지 않습니다. – user2167372

1

직접 해보지는 않았지만 정상적으로 작동하는 것처럼 들립니다. data_store 관리자를 사용하여 하나의 앱에서 개체를 GCS로 백업 한 다음 다른 앱을 사용하여 GCS에서 해당 파일을 복원합니다. 한 번만 동기화하면 좋은 방법입니다.

당신은 항상 하나 REST 엔드 포인트를 소개 한 프로그램에서 다른 프로그램으로 데이터를 복제 할 필요가 또는 양쪽이 도움이 될 수있는 경우 :

https://code.google.com/p/appengine-rest-server/ (이것은 내가 알고, 파이썬에 있지만 당신의 응용 프로그램의 버전을 정의

모델 정의가 양쪽에서 일치하는지 확인해야합니다 (양쪽에서 동일한 배치 코드로 앱을 거의 업데이트해야 함). 데이터 추적 시간을 동기화해야하는 면만 있습니다. 마지막 동기화 및 REST 엔드 포인트를 사용하여 새 데이터를 가져옵니다. Cron Jobs가이 작업을 수행 할 수 있습니다.

또는 모델이 데이터 저장소에 다른 앱의 적절한 REST 끝점으로 쓰여질 때마다 POST 호출을 만들기 위해 모든 모델에서 PostPut 콜백을 생성하십시오.

한 가지 방법으로 일괄 업데이트하거나 다른 방법으로 지속적으로 업데이트 된 버전을 유지할 수 있습니다 (통화가 많음).