Oprogramowanie dla biznesu

Transkrypt

Oprogramowanie dla biznesu
Oprogramowanie dla biznesu
Numer 8 (90) Październik 2011
TESTY WYDAJNOŚCIOWE APLIKACJI WEBLSP I WEBDFE
SPECJALNIE DLA PAŃSTWA PRZEPROWADZILIŚMY TESTY WYDAJNOŚCIOWE NASZYCH
APLIKACJI SPRZEDAŻOWYCH WEBLSP I WEBDFE, ABY POKAZAĆ, ŻE APLIKACJA WEBLSP
DEKLASUJE APLIKACJĘ WEBDFE POD WZGLĘDEM WYDAJNOŚCI, SKALOWALNOŚCI I
ERGONOMII PRACY UŻYTKOWNIKA. NINIEJSZY ARTYKUŁ PRZEDSTAWIA WYNIKI TYCH
TESTÓW.
Kiedy ponad 2 lata temu nasza firma rozpoczęła projekt zbudowania nowej platformy
sprzedażowej mającej zastąpić dotychczasowe rozwiązanie web.dfe podjęto decyzję o
wyborze nowej platformy technologicznej. Wybór padł na JEE (java enterprise edition).
Decyzja o wyborze tej platformy podyktowana była sugestiami naszych Klientów
dotyczącymi między innymi wydajności i komfortu pracy aplikacji web.dfe. Teraz, kiedy
możemy pochwalić się ukończonym projektem, pragniemy sprawdzić czy nasze założenia
były słuszne i czy zmiana technologii przyczyniła się do polepszenia wydajności,
skalowalności i ergonomii pracy użytkownika na nowej platformie web.lsp. Niniejszy
artykuł przedstawia wyniki testów porównawczych aplikacji web.dfe oraz web.lsp.
W celu przetestowania tych dwóch systemów skorzystaliśmy ze sprzętowego serwera
wyposażonego w dwurdzeniowy procesor taktowany zegarem 2.2GH oraz 6GB pamięci
operacyjnej.
Serwer posiadał przeinstalowany system operacyjny Windows 2008 server 64-bit. Nowa
platforma web.lsp może zostać również osadzona na innym systemie operacyjnym klasy
uix, jednakże web.dfe musi pracować w środowisku Microsoft Windows. Obie platformy
zostały skonfigurowane i podłączone do jednej bazy danych opartej na systemie Oracle
11g.
Pierwsza faza testów polegała na wykonaniu testów wydajnościowych opartych na
badaniu:sprawdzenie czasu odpowiedzi symulacji przejścia pojedynczego użytkownika
przez workflow w aplikacji.
Aby testy nie uwzględniały szybkości wprowadzania danych przez operatora zostały
wykonane za pomocą automatycznych testów oferowanych przez system Test Complete.
Oba przypadki zostały wykonane na identycznych przejściach ścieżki workflow.
1
Wyk. 1. Porównanie czasu odpowiedzi symulacji przejścia pojedynczego użytkownika
przez workflow aplikacji
Analizując wyniki testu można jednoznacznie wskazać zwycięstwo web.lsp. Test przejścia
prostego workflow został wykonany blisko dwukrotnie szybciej.
Taki wynik web.lsp sugerował konieczność dowiedzenia się czy aplikacja nadal będzie się
zachowywać w ten sposób, kiedy serwer zostanie obciążony przez wielu użytkowników
jednocześnie.
Aby to sprawdzić wykonaliśmy kolejny test obciążeniowy, którego celem jest
zasymulowanie dużej liczby jednocześnie działających użytkowników oraz utrzymanie
takiego stanu przez określony w scenariuszu testowym czas. Test ten miał również
zbadać jak wiele zapytań (requests) jest w stanie obsłużyć system w określonym
przedziale czasu.
2
Wyk. 2. Test obciążeniowy
Wyniki powyższego testu sugerują, że aplikacja web.lsp zachowuje się stabilnie w
porównaniu z wcześniejszą architekturą web.dfe. Próbę tę prowadziliśmy w kierunku
testu przeciążeniowego, aby określić, w którym momencie aplikacja zacznie zachowywać
się niestabilnie lub zupełnie odmówi odpowiedzi. Oba systemy zostały obciążane dużą
liczbą jednocześnie działających użytkowników, przekraczających zasoby serwera.
Aplikacja web.dfe pracowała stabilnie do obciążenia blisko 50 użytkownikami jednak ze
znacznym wzrostem czasu odpowiedzi przekraczającym blisko 10-krotnie średni czas
przy małym obciążeniu. System web.slp zachowywał się stabilnie do końca testu przy
obciążeniu ponad 80 użytkownikami z nieznacznym spadkiem wydajności.
Wyniki przeprowadzonych testów jednoznacznie potwierdzają słuszność wyboru
architektury JEE jako platformy dla naszych nowych rozwiązań. Przeprowadzone testy
przedstawiają suche wyniki jedynie na temat wydajności nowego rozwiązania, jednak nie
należy zapominać iż nowa platforma niesie również bardziej ergonomiczny interfejs
użytkownika oparty o technologię AJAX, która znacznie redukuje potrzeby dotyczące
przepustowości łącz, na których pracuje końcowy użytkownik. Architektura 3-warstwowa
zapewnia większą skalowalność poprzez możliwość łączenia aplikacji w klastry logiczne
przez co obciążenie może zostać rozłożone na kilka serwerów. Użycie buforowania
danych znacznie zmniejsza konieczność odwoływania się do bazy danych z czego wynika
dużo większa szybkość pracy z aplikacją. Jednocześnie taka technika powoduje wzrost
wydajności systemu wraz z czasem jego używania od momentu restartu. Możliwość
definiowania w dowolny sposób prezentowanych paneli definiowalnych oraz głównego
menu jest kolejnym krokiem w rozwoju platformy. Wprowadzenie nowego systemu
raportowania opartego o środowisko Crystal Report wraz z serwerem wydruków jest
krokiem milowym w porównaniu z architekturą web.dfe.
Nowe produkty będące w ofercie oparte o tę architekturę będą z całą pewnością
zadowalać naszych Klientów jako systemy skalowane i niezawodne, mogące sprostać
szybkiemu rozwojowi naszych Partnerów.
Rafał Bereza (napisz do autora)
3

Podobne dokumenty