Jak optymalizować aplikacje sieciowe
- 06.07.2010
Większość problemów z pracą aplikacji sieciowych przypisuje się kłopotom z siecią. Nie zawsze jest to prawda. Przedstawiamy kilka rad, jak usprawnić pracę firmowego oprogramowania.
Gdy pojawiają się problemy z pracą aplikacji, najczęściej podejrzewa się kłopoty z siecią. Tymczasem bez sensownego monitoringu trudno znaleźć rzeczywiste przyczyny. Porady specjalistów wskazują na to, że należy kontrolować bardzo wiele parametrów, w tym wykorzystanie procesora w routerach, stopę błędów interfejsów sieciowych, a nawet operacje wejścia-wyjścia w serwerach. Należy wdrożyć centralny serwer syslog i logować wszystkie zdarzenia z routerów do centralnego repozytorium wyposażonego w system analizy logów.
Wybudować środowisko testowe
Każda firma powinna posiadać środowisko testowe, które można szybko zbudować nawet z jednej maszyny 1U z AMD Istanbul (12 rdzeni). Wykorzystanie oprogramowania VMWare Server pracującego w systemie Linux lub VMWare ESXi umożliwi znaczącą redukcję kosztów. W tym środowisku będzie można testować wiele aplikacji dla platformy x86, a także sprawdzić nowe wersje systemów, czy nawet zmiany w konfiguracji sieci.
Środowisko to w połączeniu z bardzo dobrym emulatorem GNS3 umożliwia planowanie, zbudowanie oraz przetestowanie niemal każdej konfiguracji i infrastruktury, która pracuje w typowym przedsiębiorstwie. Środowisko testowe jest najłatwiejszym w obsłudze miejscem, w którym można badać wykorzystanie zasobów, umożliwiając bardzo sprawny monitoring i sprawdzanie wszelkich scenariuszy zmian konfiguracji. Dodatkową zaletą środowiska wirtualnego jest możliwość optymalizacji wykorzystania zasobów przez serwery i aplikacje.
Rozpoznać aplikacje
Monitoring infrastruktury doprowadza jedynie do styku sprzętu z aplikacją, ale nie zawsze informuje o tym, co się dzieje w środku oprogramowania. Należy przetestować pracę aplikacji w różnych warunkach, by znaleźć jej słabe punkty, na przykład wykryć, kiedy następuje znaczący spadek wydajności pracy i który parametr jest najbardziej krytyczny. Najlepszym sposobem pozyskania takich informacji są analizy przedwdrożeniowe przeprowadzane przez dostawców, ale bardzo wiele można osiągnąć w środowisku testowym. Jeśli dział IT będzie znał przypuszczalne przyczyny spadku wydajności aplikacji oraz będzie posiadał wyniki monitoringu infrastruktury, łatwiej będzie mógł sobie poradzić w przypadku problemów.