2010-08-01 14 views

Odpowiedz

0

naprawdę nie mogę powiedzieć, czy należy użyć bez App Engine wiedząc cokolwiek o tym, czego potrzebujesz, aby Twoja aplikacja internetowa działała, ale powiem ci, co App Engine może i nie może zrobić (lub nie zrobi).

App Engine jest fantastycznie dobry w skalowaniu. Jest to w rzeczywistości zaprojektowane do skalowania aplikacji internetowych o śmiesznych długościach przede wszystkim, z łatwością użycia i liczbą funkcji stanowiących cele drugorzędne.

Nie oznacza to, że App Engine nie ma funkcji lub nie jest łatwy w użyciu, ale jeśli kiedykolwiek pojawi się wybór między dodaniem funkcji a zachowaniem jej skalowalności, zespół App Engine wybierze skalowalność.

Na przykład App Engine nie ma niektórych funkcji relacyjnej bazy danych, ponieważ te funkcje nie są skalowane do rozmiaru aplikacji obsługiwanej przez App Engine. App Engine nie obsługuje żądań trwających dłużej niż 30 sekund, ponieważ App Engine został zaprojektowany do obsługi aplikacji internetowej, a nie do przetwarzania długotrwałych żądań.

Ogólnie rzecz biorąc, gdy App Engine czegoś nie obsługuje, nie dzieje się tak dlatego, że jest to niemożliwe - nic nie jest niemożliwe - ale raczej dlatego, że zmniejszyłoby to skalowalność App Engine.

Istnieją obejścia, które można (i zostały) zaimplementować, aby obejść ten problem, w szczególności z takimi funkcjami jak task queue, a App Engine stale otrzymuje nowe funkcje i nowe struktury zbudowane na nim.

App Engine for Business dodaje umowy SLA i różne ceny, ale w przeciwnym razie jest to prawie ten sam aparat App Engine.

16

Pytanie jest zaskakująco łatwe do odpowiedzi po tym, jak przez kilka tygodni przebijałem silnik wyszukiwarki Google. Należy go używać, gdy:

  • nie można arsed skonfigurować serwer
  • chcesz natychmiastowy dla wolnej prawie nieskończoną skalowalność
  • ruch jest spiczasty, a raczej nieprzewidywalny
  • ty don „t poczuć się jak dbanie o własnych narzędzi do monitorowania serwerów
  • trzeba cennik, który pasuje do rzeczywistego wykorzystania i nie ma czasu automat oparty
  • jesteś w stanie fragmentach długich zadań w 30 sekundowych kawałkach
  • masz umiejętności/będzie/chęć do pracy z NoSQL i radzić sobie z ich
  • konsekwencje jesteś w stanie pracować bez bezpośredniego dostępu do systemu plików

Więc właściwie można go używać prawie na wszystko, zwłaszcza strony internetowe.Jedyne, co bardzo szybko staje się zbyt drogie, to prowadzenie dużych procesów w tle. Jeśli robisz kilka poważnych błędów 24/7, lepiej jest gdzieś korzystać z własnego serwera, ponieważ żadna usługa w chmurze naprawdę nie może tego zrobić.

Ale pomyśl o tym w ten sposób, gdzie jeszcze dostaniesz architekturę, która może połknąć 10+ żądań na sekundę za dziesięć dolarów miesięcznie?

Zasadniczo sprowadza się to do tego: Jeśli chcesz skupić się na tworzeniu kodu, a nie architekturze serwera. GAE jest dla Ciebie. (w przeciwieństwie do amazonka, który zachowuje się bardziej jak fantazyjny VPS)