2010-02-07 6 views
12

AppEngine에서 실행되는 응용 프로그램은 하루에 약 50 CPU 시간을 사용합니다. 대부분은 데이터 저장소를 기다리는 데 소비됩니다.AppEngine에서 마이그레이션

AppEngine을 Rackspace Cloud Servers와 같은 것으로 옮길 계획을하고 있습니다. 일부 작업을 데이터베이스에 오프로드 할 수 있다면 애플리케이션이 더 효율적일 수 있다고 생각하기 때문에 (더하기 어려운 기능을 더 추가 할 수 있습니다.) AppEngine에서 구현).

그럼 AppEngine 앱을 어떻게 움직일 수 있습니까? webapp 프레임 워크로 개발되었으며 데이터 저장소 이외의 많은 Google API를 사용하지 않습니다. 이상적으로 나는 webapp 코드를 유지하고 다른 데이터베이스 (MySQL 또는 PostgreSQL은 아마도 CouchDB 또는 MongoDB와 같은 것으로 선호되지만 그 역시 작동 할 수 있음)와 대화 할 수있는 db 클래스를 스왑 할 수 있습니다.

업데이트 : 아래의 댓글에 대한 응답으로 ... 나는 전에 많은 웹 응용 프로그램을 실행했습니다. 나는 이전에 프로덕션 파이썬 응용 프로그램을 실행하지 않았습니다. 나는 파이썬/웹 서버 측면을 설정하는 것이 매우 간단하다고 가정합니다. Rackspace Cloud 서버와 같은 제품에 대한 희망은 그것이 성장함에 따라 리소스를 추가 할 수있는 1 "서버"가 될 것이라는 것입니다. 우리는 현재 하루 약 200k 히트를하고 있습니다.

AppEngine 최적화의 경우 우리가 할 수있는 곳에 memcache를 사용합니다 (많은 곳이 아님). 또한 Tasks를 사용하고 있으며 요청 시간 초과를 해결하는 데 도움이되지만 사용 된 리소스에 추가됩니다.

내 기본 질문은 코드 레이어를 변경하지 않아도 좋은 데이터 레이어를위한 좋은 파이썬 대안입니다. 아마 내가 묻고 싶지 않은 몇 가지 관련 질문이 있음을 알고 있지만.

+0

호기심에서 벗어나 데이터 저장소 쓰기 또는 읽기를 기다리고 계십니까? memcache와 작업 큐를 사용하고 있습니까? –

+0

또한 어떤 종류의 대답을 찾고 있는지 분명하지 않습니다. 전에 전체 스택 웹 응용 프로그램을 실행 했습니까? 하루에 몇 번 안타까? 여러 웹 서버가 필요합니까? 프레임 워크 추천이나 일반적인 웹 앱 호스팅 방법을 단계별로 찾으십니까? –

답변

9

appscale으로 재배포 할 수 있으면 App Engine 코드를 다시 작성할 필요가 없습니다.

+0

이것이 내가가는 길인 것 같네요. 웹 애플리케이션 프레임 워크가 AppEngine 외부에 존재했다는 인상하에 있었지만, 느슨하게 web.py를 기반으로 한 것 같습니다. appscale은 나에게 해킹처럼 느껴지지만 천천히 또는 필요에 따라 다시 쓰기를 허용하는 마이그레이션 경로를 제공합니다. 감사합니다. –

+0

@ 잭슨, 코드의 오픈 소스 라이선스와 유연한 "스텁과 후크"아키텍처를 고려해 볼 때 SDK의 코드를 다시 사용하여 시작할 수 있습니다. 그들이 벌써 한 일 이요? 특히 데이터 계층에서는 다양한 스토리지 시스템을위한 여러 어댑터가 있습니다. 당신이 그 것에 대해 해커를 찾는다는 것이 무엇인지 확신 할 수 없다. (나는 SO 의견이 이것을 토론 할 수있는 최고의 포럼이 아니지만 ;-). ((면책 조항 : appscale과 관련이 없지만 Google에서 일하고 appengine 팀에 많은 친구가 있습니다 .-)). –

1

TyphoonAE은 SDK를 기반으로하며 중소 규모 배포 (예 : 개별 서버 - 작은 클러스터)를 위해 설계되었으며 설정이 매우 쉬워야합니다.

죄송합니다.

+0

글쎄, 이제는 적어도 새로운 1.3.1 버전이 어떻게 바뀌는 지 알아야합니다. :) –

관련 문제