2009-05-15 5 views
6

Dzielę się korzyściami wynikającymi z rozwijania aplikacji webowych Java (niekomercyjnych) i wdrażania do czegoś takiego jak Aptana lub chmura Google, lub po prostu z kontem na Slice Host. Tomcat lub Jetty i MySQL to naprawdę moje jedyne duże wymagania. Aptana i Google App Engine są wyposażone w kilka ciekawych opcji wdrażania Eclipse, ale czy skalowalność ma znaczenie bez dużej bazy użytkowników dla aplikacji?Co jest lepsze dla hostingu rozwoju Java: Aptana? Silnik Aplikacji Google? Host plasterka?

Wydaje się, że zarówno Aptana, jak i Google App Engine znajdują się na etapach dla niemowląt, więc zastanawiam się, czy będzie zbyt wiele ograniczeń, nawet w przypadku niewielkiego rozwoju. Ktoś ma z tym doświadczenie?

Odpowiedz

6

Nie mogę rozmawiać z Aptaną, ale Google App Engine to radykalnie odmienne doświadczenie w programowaniu od tego, co otrzymasz za pomocą czegoś w rodzaju Slicehost. Różni się on inaczej (tzn. Masz możliwość obsługi znacznie większych obciążeń), ale jest też zupełnie inny niż uruchamianie własnego serwera aplikacji WWW (np. Glassfish, Tomcat, JBoss itp.) I kodowanie przy użyciu "standardowych" narzędzi Java.

Dzięki rozwiązaniu Slicehost lub dowolnemu rozwiązaniu hostowanemu można łatwo lokalnie skonfigurować własne środowisko programistyczne, które dokładnie naśladuje działanie uruchomione na serwerze. To samo oprogramowanie, ta sama maszyna wirtualna, może nawet ta sama wersja systemu Linux. Można nawet przenieść się do innego hosta i nadal móc skonfigurować to samo środowisko.

Dzięki Google App Engine będziesz mógł korzystać z emulatora (nie uruchamiasz na dużą skalę lokalnie BigTable), więc nie ma jednoznacznej korespondencji między twoim środowiskiem a tym na serwerze. Nie ma alternatywnego miejsca, do którego można się przenieść i nadal działać w tym samym środowisku. Ponadto niektóre z wielu popularnych frameworków Java, których możesz użyć do tworzenia aplikacji internetowych, albo nie będą działały w ogóle (np.), Albo nie będą działać po wyjęciu z pudełka (see here for more details).

Nie jestem na App Engine, w rzeczywistości, myślę, że to naprawdę fajne. Jeśli zapotrzebowanie na Twoje aplikacje jest stosunkowo niskie, a Ty nie potrzebujesz dużych wymagań skalowania, ale twój ruch nie jest tak niski, że wygodnie mieścisz się w ramach bezpłatnego limitu w Google, to prawdopodobnie skłaniałbym się ku hostowanemu rozwiązaniu, np. Zamiast tego Slicehost.

+0

Powoli próbuję napisać aplikację java na App Engine, a Twoje punkty są na miejscu. Twój wybór ram jest obecnie dość ograniczony, co jest dla mnie największą wadą. Muszę jeszcze spróbować przesłać swoją aplikację na swoje serwery, więc nie mogę mówić o różnicy w środowisku, ale mam nadzieję, że będą one na tyle podobne, aby wychwycić większość problemów. Będę szedł dalej, ponieważ podejrzewam, że mój ruch będzie na tyle mały, że będzie wolny przez bardzo długi czas. – digitaljoel

2

Używam slicehost i jestem zadowolony z dotychczasowego wyniku. Łatwo jest go ulepszyć (musiałem to zrobić już raz) i łatwo go przywrócić do kopii zapasowej plasterka (musiałem to zrobić raz). Prowadzę serwis Tomcat i MySQL.

1

Pamiętaj, że Google App Engine nie zapewnia pełnego środowiska JRE. Na przykład nie możesz bezpośrednio odrodzić wątków. Odkryłem również, że wydajność magazynu danych GAE jest zbyt wolna - nieustannie napotykam na wyjątki związane z limitem czasu. Podsumowując, nie jest to prawdziwe rozwiązanie hostingowe. Musisz bardzo dostosować aplikację, aby działała na GAE.

0

Proponuję skorzystać z Amazon Web Services. Możesz uzyskać moc chmury bez żadnych ograniczeń w swojej aplikacji, w przeciwieństwie do App Engine.

+0

Brak ograniczeń? Masz na myśli brak ograniczeń w gwintowaniu, przechowywaniu danych, ustawieniach czyszczenia pamięci, ustawieniach pamięci itp.? – Matt

+0

Cóż, mam na myśli brak ograniczeń, ponieważ AWS pozwala skonfigurować/odłączyć serwer od kliknięcia przycisku, i możesz skonfigurować ten serwer, aby zrobił to, co chcesz. Nie nakłada ograniczeń na to, czego aplikacja może lub nie może używać. –

Powiązane problemy