2011-03-11 22 views
8

Używam oprogramowania GlassFish Server Open Source Edition 3.0.1 (kompilacja 22). Zarówno w moim środowisku programistycznym (Mac OSX, 4 rdzenie i 8 GB RAM), jak i produkcji (Linux, 2 rdzenie, 4 GB) konsola jest bardzo wolno uruchamiana.Dlaczego konsola administracyjna Glassfish działa tak wolno?

Maszyna jest w dużej mierze bezczynna. Co robi Glassfish? Czy jest coś, co należy poprawić, aby przyspieszyć działanie?

Update 1:

przykład- Próbowałam powtórzyć pewną konfigurację JDBC że mam wdrożony i przetestowany lokalnie do mojego serwera. Właśnie zmarnowałem GODZINĘ próbującą skopiować konfigurację, ponieważ nie mogę jednocześnie uruchomić jednocześnie konsol rozwijania narzędzi dla hodowców dev i prod, bez wyłączania jednego z nich.

Dostałbym konsolę dev do otwierania, a na koniec do prod jeden, ale kiedy kliknę z powrotem w moje okno programisty, już upłynął limit czasu, a teraz próbuje się ponownie uruchomić.

To jest szalone. Godzinę, aby powielić proste połączenie JDBC? Czy ktoś naprawdę potrafi z powodzeniem wykorzystać to w produkcji?

Aktualizacja: 2

znalazłem dwie rzeczy, które miały ogromny różnica:

  1. Ajax aspekty GlassFish UI wydaje się bardzo kruche. Miałem otwarte dwie zakładki przeglądarki, jedną do localhost:4848, a drugą do localhost:9000. Pierwsza zakładka dotyczyła serwera Glassfisha działającego na localhost. Drugi był serwerem zdalnym, port przekazywany do serwera lokalnego jako ssh. Zwykle nie stanowi to problemu, ale podejrzewam, że pomylono obsługę sesji w Glassfish, aby zobaczyć dwa serwery na tym samym "hoście", nawet jeśli znajdują się one na różnych portach.

  2. Zaktualizowałem wersję 3.0 do 3.1. Wydaje się, że usunęło to dużo opóźnienia początkowego.

Mam nadzieję, że ten post pomoże komuś innemu nie cierpieć tej traumy. Dziękuję wszystkim za sugestie.

+0

Naprawdę nie widzę tu pytania o programowanie? –

+0

@Tim: Chciałbym zachować pytania, ponieważ wielu programistów ma z tym problem (zobacz [tutaj] (http://www.mentby.com/Group/glassfish-users/glassfish-v3-admin-console-very -slow.html)) –

+4

IMHO to bardzo dużo na temat programowania, ponieważ jako programiści jest to narzędzie, z którym musimy się zmagać na co dzień. To tak, jakbyśmy powiedzieli, że nie możemy zadawać pytań na temat kompilatorów lub środowiska JRE. –

Odpowiedz

10

Może to być związane z modułem aktualizacji Glassfish.

Podczas każdego uruchomienia konsoli moduł aktualizacji próbuje policzyć wszystkie dostępne aktualizacje. Ponieważ korzystasz z GF 3.0.1, istnieje wiele aktualizacji od 28 lutego, kiedy nowy Glassfish 3.1 został wydany. Może być do 70 aktualizacji lub więcej, a serwery aktualizacji muszą obsługiwać wiele żądań od tego dnia.

Miałem ten sam problem. Ale mógłbym to rozwiązać, znajdując wreszcie dobry wątek dyskusji w Jira Glassfisha. Look here for possible solutions. Nie musisz czytać całego wątku, poszukaj podsumowującego postu od Sun, 13 grudnia 2009 12:42:48 autorstwa Anissy Lam.

Podsumowując ten artykuł (szczegóły można znaleźć tam):

  1. dodać JVM-opcję GlassFish konfiguracji w celu uniemożliwienia dostępu do sieci dla konsoli administratora
  2. Zmień nazwę modułu aktualizacji w swojej Katalog modułów glassfish.

Mam nadzieję, że to pomoże!

+0

+1 To przypomina mi o problemie, który miałem z administratorem glassfish, a to dlatego, że serwer nie miał dostępu do Internetu. Myślę, że to mógł być kod rejestracyjny, a nie aktualizacja. – JOTN

+0

To mnie w połowie drogi, dzięki! –

+0

link został zerwany – vels4j

0

Zdecydowanie ma miejsce jakiś czas sieciowy. Te operacje powinny zająć kilka sekund. Czy jest coś przydatnego w server.log? Wiele problemów z zawieszaniem się ma związek z wyszukiwaniem wstecznym DNS. Snoop sieci pokazuje, do czego próbuje uzyskać dostęp.

4

Nie, to nie tylko ty. GUI Administratora Glassfish 3 jest okropnie koszmarne i, o ile wiem, nic na to nie można poradzić. Ale zauważyłem, że wszystkie problemy wydają się znajdować w warstwie prezentacji. Jeśli używam asadmin lub bezpośrednio wywołuję AJAX, wydajność jest rozsądna. Najlepiej jest dowiedzieć się, jak możesz zrobić to, czego potrzebujesz, bez korzystania z GUI. Zacznij od nauki poleceń asadmin dotyczących często wykonywanych zadań, takich jak wdrażanie i odinstalowywanie aplikacji.

Jeśli chciałem skopiować konfigurację JDBC z jednej instancji do drugiej, wystarczy otworzyć pliki domain.xml i ręcznie skopiować elementy jdbc-resource i jdbc-connection-pool. (Jest prawdopodobnie sposób, aby to zrobić "poprawnie" z asadminem, ale uczenie się, jak to zrobić, zabrałoby mnie dziesięć razy dłużej niż zrobienie tego w "nieprawidłowy" sposób, więc nigdy się tym nie przejmowałem.)

+0

Masz rację co do tego, w jaki sposób ssanie jest w warstwie prezentacji. GF był bardzo zdezorientowany, ponieważ miałem dwie karty otwarte dla różnych instancji serwera (mimo że oba były na "localhost", miały różne porty). –

0

wyłączyliśmy automatyczne aktualizacje za pośrednictwem preferencji narzędzia do aktualizacji i problem został rozwiązany Należy zainstalować narzędzie aktualizacji, aby to zrobić.

0

Osobiście używam laptopa i miałem ten sam dokładny problem. Dowiedziałem się, że moje urządzenie działa w trybie niskiego zużycia energii. Kiedy zmieniłem ją na zbilansowane zużycie energii, bardzo czasochłonne przetwarzanie zostało znacznie zredukowane.

Powiązane problemy