Programing

Google App Engine 사용에 대한 의견이 있으십니까?

crosscheck 2020. 7. 9. 08:09
반응형

Google App Engine 사용에 대한 의견이 있으십니까? [닫은]


매우 작고 빠른 더러운 프로젝트를 수행하려고합니다. Google App Engine이 Django가 내장 된 Python에서 실행되고 있다는 사실을 좋아합니다. 플랫폼을 사용해 볼 수있는 변명을합니다 ...하지만 내 질문은 다음과 같습니다.

장난감 문제 이외의 용도로 앱 엔진을 사용한 사람이 있습니까? 나는 거기에 좋은 예제 앱이 있다는 것을 알았으므로 이것이 실제 거래에 충분하다고 생각하지만 피드백을 얻고 싶어했습니다.

다른 성공 / 실패 노트는 좋을 것입니다.


내 작은 지진 시계 응용 프로그램 http://quakewatch.appspot.com/에 대한 앱 엔진을 사용해 보았습니다.

내 목적은 앱 엔진의 기능을 확인하는 것이 었으므로 주요 요점은 다음과 같습니다.

  1. 그것은 django와 함께 기본적으로 제공되지 않으며, pythonic 자체 웹 프레임 워크가 있으며 django와 같은 URL 디스패처가 있으며 django 템플릿을 사용합니다. 따라서 django exp가 있다면. 당신은 사용하기 쉽다는 것을 알게 될 것입니다
  2. 서버에서 오래 실행되는 프로세스를 실행할 수 없습니다. 요청에 응답하고 빠르게 처리해야합니다. 그렇지 않으면 appengine이 종료합니다. 따라서 앱에 많은 백엔드 처리가 필요한 경우 appengine이 가장 좋은 방법은 아닙니다. 그렇지 않으면 처리해야합니다. 자신의 서버에
  3. 내 quakewatch 앱에는 구독 기능이 있습니다. 최신 Quakes가 발생했을 때 이메일로 보내야한다는 것을 의미하지만, 새로운 quakes 솔루션을 모니터링하기 위해 앱 엔진에서 백그라운드 프로세스를 실행할 수 없습니다. 귀하의 페이지 중 하나에 연결하여 구독 전자 메일러를 실행하지만 여기에서도 많은 시간을 소비하지 않거나 작업을 여러 조각으로 나누지 않도록주의해야합니다.
  4. 장고와 같은 모델링 기능을 제공하지만 백엔드는 완전히 다르지만 새 프로젝트의 경우 중요하지 않습니다.

그러나 전반적으로 많은 백그라운드 처리가 필요없는 앱을 만드는 것이 우수하다고 생각합니다.

편집 : 이제 일괄 처리 또는 예약 된 작업을 실행하는 데 작업 대기열을 사용할 수 있습니다

편집 : 1 년 동안 GAE에서 실제 응용 프로그램을 작업 / 생성 한 후 이제는 백만 및 수백만 사용자로 확장 해야하는 응용 프로그램을 만들지 않으면 GAE를 사용하지 않는 것이 좋습니다. GAE에서 사소한 작업을 유지하고 수행하는 것은 분산 된 특성으로 인해 마감 시간 초과 오류를 피하고 엔터티를 계산하거나 복잡한 쿼리를 수행하기 위해 복잡한 코드가 필요하므로 복잡한 복잡한 응용 프로그램이 LAMP를 준수해야합니다.

편집 : 동일한 엔티티 그룹의 엔티티 만 트랜잭션에 사용할 수 있고 두 개의 서로 다른 그룹을 업데이트하는 프로세스를 악몽으로 만듭니다 (예 : user1에서 user2로 돈을 이체)하기 때문에 미래에 원하는 모든 트랜잭션을 고려하여 모델을 특별히 설계해야합니다. 동일한 엔티티 그룹에 있지 않으면 트랜잭션에서 불가능하지만 동일한 엔티티 그룹으로 만드는 것이 빈번한 업데이트 목적에 적합하지 않을 수 있습니다 .... http://blog.notdot.net/2009/9/Distributed-Transactions- 온앱 엔진


트래픽이 많은 여러 응용 프로그램을 호스팅하기 위해 GAE를 사용하고 있습니다. 50-100 req / sec의 순서와 같습니다. 좋습니다. 충분히 추천 할 수 없습니다.

웹 개발에 대한 나의 이전 경험은 Ruby (Rails / Merb)에있었습니다. 파이썬을 배우는 것은 쉬웠다. Django 또는 Pylons 또는 다른 프레임 워크를 망설이지 않고 방금 GAE 예제에서 시작하여 제공된 기본 webapp 라이브러리에서 필요한 것을 만들었습니다.

SQL의 유연성에 익숙하다면 데이터 스토어에 익숙해 질 수 있습니다. 너무 외상은 없습니다! 가장 큰 조정은 JOIN에서 벗어나는 것입니다. 정규화가 중요하다는 생각을 없애야합니다.


Google App Engine을 사용하게 된 이유 중 하나는 도메인의 Google Apps와의 통합 때문입니다. 기본적으로 도메인의 (제어 된) 로그인으로 제한되는 사용자 지정 관리 웹 응용 프로그램을 만들 수 있습니다.

이 코드에 대한 대부분의 경험은 간단한 시간 / 작업 추적 응용 프로그램을 작성하는 것이 었습니다. 템플릿 엔진은 단순했지만 여러 페이지 응용 프로그램을 매우 쉽게 사용할 수있게 만들었습니다. 로그인 / 사용자 인식 API도 비슷하게 유용합니다. 너무 많은 문제없이 공개 페이지 / 개인 페이지 패러다임을 만들 수있었습니다. (사용자는 개인 페이지를보기 위해 로그인합니다. 익명 사용자는 공개 페이지 만 표시했습니다.)

"실제 작업"을 위해 프로젝트를 중단했을 때 프로젝트의 데이터 저장소 부분으로 들어가고있었습니다.

나는 아주 적은 시간에 많은 것을 성취 할 수있었습니다. 필자는 이전에 Python을 사용한 적이 없었기 때문에 특히 즐거웠습니다 (둘 다 새로운 언어였으며 새로운 언어에도 불구하고 개발이 여전히 빨 랐기 때문에). 나는 작은 일이있어서 나는 내 임무를 수행 할 수 없을 것이라고 믿게되었다. 대신 기능과 기능에 대해 상당히 긍정적 인 인상을 받았습니다.

그것은 나의 경험이다. 어쩌면 완공되지 않은 장난감 프로젝트 이상을 나타내는 것이 아니라 플랫폼에 대한 시험판을 나타내는 것일 수도 있습니다.


"Django를 실행하는 App Engine"아이디어는 약간 오해의 소지가 있습니다. App Engine은 전체 Django 모델 레이어를 대체하므로 데이터를 모델링하고 생각하는 다른 방법이 필요한 App Engine의 데이터 저장소에 적응하는 데 시간을 할애 할 수 있도록 준비하십시오.


GAE를 사용하여 http://www.muspy.com 을 빌드했습니다 .

장난감 프로젝트에 지나지 않지만 지나치게 복잡하지는 않습니다. 저는 여전히 Google이 해결해야 할 몇 가지 문제에 의존하지만 웹 사이트를 개발하는 것은 즐거운 경험이었습니다.

호스팅 문제, 서버 관리 등을 다루고 싶지 않다면 확실히 추천 할 수 있습니다. 특히 파이썬과 장고를 이미 알고 있다면.


나는이 시점에서 App Engine이 소규모 프로젝트에 매우 멋지다고 생각합니다. 호스팅에 대해 걱정할 필요가 없다는 말이 많이 있습니다. 이 API는 또한 확장 가능한 앱을 만드는 방향으로 나아가도록하는 것이 좋습니다.

  • app-engine-patch 는 Django와 App Engine간에 좋은 계층으로, 인증 앱 등을 사용할 수 있습니다.
  • Google은 2008 년 말까지 SLA 및 가격 책정 모델을 약속했습니다.
  • 요청은 10 초 안에 완료되어야하고 웹 서비스에 대한 하위 요청은 5 초 안에 완료되어야합니다. 따라서 빠르고 가벼운 응용 프로그램을 설계하여 다른 플랫폼 (예 : 호스팅 서비스 또는 EC2 인스턴스)으로 심각한 처리를 오프로드 할 수 있습니다.
  • 더 많은 언어가 곧 올 것입니다! 구글은 비록 :-)라고 말하지 않을 것입니다. 내 돈은 다음에 자바에 있습니다.

이 질문은 완전히 답변되었습니다. 어느 것이 좋니. 그러나 한 가지 언급 할 가치가 있습니다. Google 앱 엔진에는 일식을위한 플러그인이 있습니다.

이미 이클립스로 개발을한다면 너무 행복 할 것입니다.

Google 앱 엔진의 웹 사이트에 배포하려면 비행기 로고가있는 작은 버튼 하나만 클릭하면됩니다.


sql 게임을 살펴보십시오. 매우 안정적이며 실제로 트래픽 제한을 한 지점에서 밀어서 Google에 의해 제한되었습니다. 다른 사람이 완전히 제어하는 ​​서버에서 앱을 호스팅하는 것 외에 App Engine에 대한 좋은 소식은 없습니다.


I used GAE to build a simple application which accepts some parameters, formats and send email. It was extremely simple and fast. I also made some performance benchmarks on the GAE datastore and memcache services (http://dbaspects.blogspot.com/2010/01/memcache-vs-datastore-on-google-app.html ). It is not that fast. My opinion is that GAE is serious platform which enforce certain methodology. I think it will evolve to the truly scalable platform, where bad practices simply not allowed.


I used GAE for my flash gaming site, Bearded Games. GAE is a great platform. I used Django templates which are so much easier than the old days of PHP. It comes with a great admin panel, and gives you really good logs. The datastore is different than a database like MySQL, but it's much easier to work with. Building the site was easy and straightforward and they have lots of helpful advice on the site.


I used GAE and Django to build a Facebook application. I used http://code.google.com/p/app-engine-patch as my starting point as it has Django 1.1 support. I didn't try to use any of the manage.py commands because I assumed they wouldn't work, but I didn't even look into it. The application had three models and also used pyfacebook, but that was the extent of the complexity. I'm in the process of building a much more complicated application which I'm starting to blog about on http://brianyamabe.com.

참고URL : https://stackoverflow.com/questions/110186/feedback-on-using-google-app-engine

반응형