2011-01-15 17 views
11

To pytanie należy podać tutaj: prawdopodobnie nie należy do . Przekonamy się, jak rozwiążemy odpowiedź, jeśli to nie pasuje, przenieś go tam, gdzie należy.Do czego mogę użyć Google App Engine?


Obserwuję ten getting started przewodnik dla Google App Engine, i widzę, co można i nie można zrobić.

Zasadniczo widzę, że jest bardzo podobny do wzorca MVC. Tworzysz swój model, a następnie tworzysz Widok, który używa tego Modelu do wyświetlania informacji.

Nie tylko to, ale używa kontrolera pewnego rodzaju w ten sposób:

application = webapp.WSGIApplication(
           [('/', MainPage)], 
           debug=True) 

moje pytanie, dlaczego chcesz korzystać z tej usługi Google App Engine, jeśli jest taka sama jak przy użyciu wielu innych MVC ramy?

Czy to jedyna korzyść, którą można uzyskać automatyzując równoważenie obciążenia obsługiwane przez Google?

Jaki jest dobry przykład czegoś, do czego potrzebny jest App Engine?

Próbuję się nauczyć, dzięki za dyskusję.

+2

Myślę, że jest to ważne pytanie, przynajmniej teoretycznie, ale powinno to być wiki społecznościowe, ponieważ nie ma "jednej" poprawnej odpowiedzi. –

+0

@ wiki społeczności Chris nie istnieje już na pytanie. – systempuntoout

+0

Proszę nie używać słowa automagicznie. Proszę. Boli mnie w uszach i jest bardziej rozgrywane niż "niedorzeczne". Chyba że masz na myśli to w szyderczy sposób, na przykład coś myląco tajemniczego. Wtedy jest w porządku. – jpsimons

Odpowiedz

1

Główną zaletą App Engine jest jego skalowalność przy stosunkowo niskich kosztach. Daje to jednak własne punkty ujemne. Ze względu na jego skalowalność blokuje Cię do robienia rzeczy "na swój sposób", co daje mnóstwo "gotch" przy pierwszym ustawianiu.

Mógłbym wymienić wszystkie punkty, ale prawie wszystko muszę powiedzieć, można znaleźć tutaj ... Pros & Cons of Google App Engine

11

Google App Engine nie jest ramy. Google App Engine to platforma jako usługa. App Engine to platforma do tworzenia aplikacji, w których składniki serwera są zarządzane dla Ciebie przez Google, dzięki czemu nie rozpraszają Cię przyziemne szczegóły konfiguracji serwera. Pozwala skupić się na tym, co robisz najlepiej, budując oprogramowanie, aby rozwiązać problem biznesowy.

Istnieje wiele różnych frameworków dla App Engine. Struktura nie jest taka sama jak platforma. Weź przykład Java SDK for App Engine. Mam wersję JQuery Form builder, zbudowaną w PHP, działającą na App Engine przy użyciu servletu Java Querces do interpretacji PHP. Inny znany programista użył Struts w App Engine, Restlets i Spring.

Przykłady tego, co można zrobić:

  • Host witryny spółka
  • Host aplikacji czat na żywo za pomocą ChannelAPI (Comet dla App Engine)
  • gospodarza bloga za pomocą Bloog lub innego oprogramowanie blog napisany w Pythonie
  • wiele innych rzeczy

Spring and Struts to frameworki MVC, a Restlets to framework REST.Konstruktor formularzy JQuery, którego używam, nie jest w ogóle zbudowany w systemie, ponieważ jest to rozwiązanie typu hackjob używające Querces do uruchamiania PHP w App Engine.

Podsumowując, istnieje prawdopodobnie wiele frameworków, które można wykorzystać w SDK Pythona dla App Engine, ale App Engine nie jest strukturą.

Podsumowując, można wybrać hostowanie aplikacji samodzielnie lub za pośrednictwem dostawcy płatności, lub można użyć modelu nowej generacji firmy Google.

Być może najbardziej atrakcyjną rzeczą dla mnie w Google App Engine jest to, jak szybko mogę uzyskać coś działającego, nawet programowanie w Javie. Pakiet SDK App Engine będzie wymieniać się na gorąco, kompilując kod po każdej zmianie. Wdrożenia są również jednym kliknięciem w Eclipse. Mogę mieć coś w produkcji, klikając tylko przycisk.

Istnieje również duża skalowalność platformy jako modeli usług, które mogą skalować w górę lub w dół w zależności od wielkości aplikacji.

Wreszcie za darmo dla małego użycia.

5

Myślę, że to pytanie pomija punkt silnika aplikacji. Pytanie zakłada, że ​​silnik aplikacji to tylko framework sieciowy, ale tak naprawdę jest to cała platforma. Struktura sieci jest jedną z warstw stosu oprogramowania, która jest wymagana do uruchomienia witryny internetowej. Większość stron internetowych będzie również potrzebować bazy danych, systemu operacyjnego do uruchamiania oprogramowania i bazy danych, fizycznych serwerów, które będą uruchamiały wszystko itd. Silnik aplikacji zapewnia wszystko, co jest zapakowane w jedną zintegrowaną paczkę, za którą możesz zapłacić, tak jak potrzebujesz to. Plus dostaniesz za darmo, jeśli dopiero zaczynasz.

Czy jedyną korzyścią, którą uzyskasz, jest automatyczne równoważenie obciążenia obsługiwane przez Google?

To ogromna korzyść. Czy próbowałeś kiedyś uruchomić stronę internetową, która jest wystarczająco duża, aby potrzebować wielu serwerów? Ile to kosztowało? Ile czasu poświęcałeś na konfigurowanie serwerów, łatanie ich itp.?