Kawa i jabłka

Carsystem-Voss ze Szczecina wdraża oparty na technologii Java system MAXeBiznes firmy Max Elektronik na platformie Apple Mac OS X.

Carsystem-Voss ze Szczecina wdraża oparty na technologii Java system MAXeBiznes firmy Max Elektronik na platformie Apple Mac OS X.

Carsystem-Voss (CSV) to firma handlowo-usługowa specjalizująca się w obsłudze lakierni samochodowych. Firma oferuje kompleksowe systemy lakiernicze, lakiery oraz prowadzi komputerowe mieszalnie lakierów na terenie Polski i krajów ościennych. Rozwój sieci sprzedaży wymusił na firmie konieczność wdrożenia scentralizowanego systemu wspomagającego zarządzanie.

Od początku wiadomo było, że system ma działać w pełni online, tymczasem większość spośród 68 oddziałów CSV jest zlokalizowana w niewielkich miejscowościach. "W miastach liczących po kilka czy nawet kilkanaście tysięcy mieszkańców, łączność nadal jest fatalna. Neostrada to luksus - w wielu przypadkach jedyna rozsądna opcja to SDI lub ISDN" - mówi Paweł Sołtysiński, główny informatyk w Carsystem-Voss, sp. z o.o. w Szczecinie.

W związku z tym ograniczeniem podstawowym kryterium wyboru nowego systemu była efektywna praca z graficznym interfejsem w sieci WAN o słabych parametrach. To jedno wymaganie okazało się na tyle trudne, że na placu boju pozostały jedynie dwie firmy: Hansa Business Solutions z systemem Hansa World oraz Max Elektronik (Grupa Emax) z systemem MAXeBiznes. Ostatecznie wybrany został ten drugi system - w dużej mierze ze względu na łatwość i relatywnie niskie koszty rozwoju nowej funkcjonalności systemu w Polsce.

Sprawdzone smaki

Kawa i jabłka

Paweł Sołtysiński, gŁówny informatyk w Carsystem-Voss sp. z o.o., Szczecin

Wdrożenie w CSV nie byłoby dla Max Elektronik - w sensie technicznym - niczym nadzwyczajnym, gdyby nie jeden drobny szczegół. Klient zażądał, by zarówno aplikacje serwerowe systemu MAXeBiznes, jak i preferowana przez niego baza danych Oracle 10g Standard Edition, zostały uruchomione na platformie Apple Mac OS X. "Sprzęt Apple i platformę Mac OS wykorzystujemy w firmie od wielu lat i mamy z nią bardzo pozytywne doświadczenia. Notebooki Apple «żyją» średnio dwa razy dłużej niż sprzęt PC - nawet do 6 lat - pomimo tego, że większość z nich jest prawie stale w podróży. Użytkownicy notebooków Apple rzadko proszą o wsparcie techniczne, nie mają też problemów z wirusami itd. Chcieliśmy, aby nowy system działał na platformie, która nie wymaga zbyt wiele zachodu" - opisuje swoje doświadczenia Paweł Sołtysiński.

Doświadczenia CSV okazały się tyleż interesujące, co zadziwiające dla wszystkich, którzy się o nich dowiadywali - postawie firmy na każdym kroku towarzyszyło niedowierzanie. "Gdy po raz pierwszy zadzwoniłem do Oracle Polska z pytaniem, kto może mi pomóc w konfiguracji bazy na platformie Mac OS X, nikt nie wiedział, że taka wersja bazy w ogóle istnieje. Dziś jest zupełnie inaczej, ale początki były naprawdę trudne - dla wszystkich to była egzotyka" - opowiada Paweł Sołtysiński.

Wersja serwera Oracle 10g dla Mac OS X rzeczywiście istniała, ale certyfikowana konfiguracja obejmowała system operacyjny w wersji 10.3.2 - i żaden inny. Próby zainstalowania bazy na nowszych wersjach skutkowały jednak komunikatami o błędach uniemożliwiających dokończenie instalacji. Ponieważ konfiguracje z systemem innym niż 10.3.2 nie były wspierane przez Oracle, CSV nie mogło liczyć na wsparcie techniczne. Lekarstwem okazały się wskazówki zdobyte na listach dyskusyjnych (oczywiście nie polskich) i informacje od znajomych informatyków pracujących w USA. "Okazało się, że w skrypcie inicjującym moduł listenera tej wersji bazy był błąd. Na szczęście w Stanach te problemy ludzie mieli nieco wcześniej i ktoś napisał poprawny skrypt" - mówi Paweł Sołtysiński.

I stało się. Serwer został zainstalowany - choć nie bez komunikatów o błędach, dotyczących m.in. lokalizacji niektórych plików - a po restarcie działał tak jak na każdej innej platformie. W tym momencie można było przystąpić do testów z aplikacjami. Po stronie klienckiej, z użyciem komputerów Mac, zdalne podłączenie aplikacji do bazy udało się już za pierwszym razem, co dla wszystkich było zaskoczeniem - nikt się nie spodziewał, że pójdzie tak gładko.

Jeszcze większym zaskoczeniem okazały się testy wydajnościowe. "Zgodnie z przewidywanym zapotrzebowaniem zdefiniowaliśmy pulę 200 połączeń do serwera baz danych i badaliśmy jego zachowanie pod różnymi obciążeniami. Okazało się, że zapytania i raporty wykonują się wystarczająco szybko, a samo środowisko - serwer i baza - zajmują jedynie ok. 2 GB pamięci, czyli o połowę mniej, niż w środowisku x86" - wspomina Paweł Sołtysiński.

Możliwe większe plony

Oddzielna historia wiąże się ze środowiskiem Java na platformie Mac OS X. Publikując system Mac OS X 10.3, Apple nie traktował optymalizacji prędkości pracy środowiska Java priorytetowo, ograniczając się do zapewnienia działania standardowej maszynie wirtualnej autorstwa Sun Microsystems. "Ten brak optymalizacji widać do dziś, ale trzeba powiedzieć, że z każdą nową podwersją systemu obsługa Javy jest coraz wydajniejsza" - mówi Paweł Sołtysiński. W CSV działa ta właśnie maszyna wirtualna w wersji 1.4.2, na której posadowiony jest serwer Tomcat 5.0.28.

Przy okazji testowego uruchomienia aplikacji systemu MAXeBiznes na serwerze i klientach Mac OS X okazało się, że pełne przeniesienie wymaga drobnych, ale jednak, zmian w kodzie. "Gdy kilka lat temu projektowaliśmy system MAXeBiznes, nie istniała technologia Java Web Start, podobnie jak wiele innych udogodnień dostępnych dzisiaj. Na potrzeby lokalnego zapisu plików czy drukowania łatwiej było nam wtedy wskazać w startowych parametrach klienta, konkretną ścieżkę do pliku czy biblioteki, niż tworzyć idealnie przenośny kod. Zwolennikami czystości Javy byliśmy i jesteśmy, ale nie ma technologii, która nie wymagałaby kompromisów" - mówi Zygmunt Rozynek, ekspert technologii informatycznych w Max Elektronik w Zielonej Górze.

Od samego początku aplikacja MAXeBiznes poprawnie obsługiwała polskie znaki w formacie Unicode i poprawnie je drukowała, co na innych platformach za pierwszym razem - jak twierdzili twórcy aplikacji - rzadko się zdarzało. Godnym uwagi niuansem przy przenoszeniu aplikacji na platformę Mac OS X była jednak konieczność zmiany obsługi programu za pomocą klawiatury. Z prostego powodu - o ile w systemie Windows polskie znaki tworzy się za pomocą prawego klawisza Alt, w systemie Mac OS X używany jest lewy klawisz Alt. Takich różnic jest jeszcze kilka.

Bez obawy o zbiory

Dla wielu użytkowników systemów biznesowych działających w środowisku Windows wykorzystywana przez CSV infrastruktura sprzętowo-systemowa wygląda nietypowo. Firma użytkuje jeden stelażowy serwer Apple Xserve z dwoma procesorami PowerPC G5 z zegarami 2,3 GHz i 512 KB pamięci podręcznej na każdym z nich. Serwer jest wyposażony w 6 GB pamięci RAM, z czego przy szczytowym obciążeniu wykorzystuje niecałe 3 GB, zaś w normalnych warunkach - w granicach 2 GB.

Serwer nie współpracuje z żadną zewnętrzną macierzą dyskową. Bezpieczeństwo danych zapewnia programowe rozwiązanie Xraid, będące standardowym elementem platformy systemowej Mac OS X. Oprogramowanie to komunikuje się z trzema zamontowanymi w obudowie serwera dyskami SATA, których kontrolery zawierają oprogramowanie firmware wgrywane przez Apple. Dyski takie są nieco droższe od dysków SATA, które można kupić na wolnym rynku, ale z dopłaty tej wynika znacznie więcej niż pieczątka certyfikacyjna.

"Oprogramowanie Xraid w naszym przypadku działa w ten sposób, że trzy dyski działają w układzie lustrzanym. Jeden z nich jest dyskiem wiodącym, na który zapisy są wykonywane bezpośrednio, z niego zaś dane są asynchronicznie kopiowane na pozostałe dwa. Jeśli któryś z dysków zaczyna zgłaszać więcej błędów, serwer automatycznie informuje administratora. Jeśli jest to dysk wiodący, Xraid w porozumieniu z firmware dysków wyznacza inny dysk jako wiodący, zaś dysk z błędami zawiera już tylko kopię. Na wszelki wypadek jest jeszcze trzecia kopia" - wyjaśnia Paweł Sołtysiński.

Jeśli awarii ulegnie sam serwer, dyski można przełożyć do innego serwera - system operacyjny Mac OS X zapewnia, że automatycznie zostanie wybrany nowy dysk wiodący i oprogramowanie może znów działać bez problemu. "Przy poważniejszej awarii możemy stracić ok. kwadransa transakcji przy założeniu, że awarii ulegnie sam serwer i trzeba będzie przełożyć dyski do drugiej maszyny. Przy wystąpieniu awarii jednego z dysków praca nie jest zakłócona - należy tylko dokonać wymiany dysku na nowy w najbliższym czasie. W naszym przypadku, gdy w skali miesiąca faktur jest ok. 9 tys., nie jest to żaden dramat. Znacznie większym problemem jest zachowanie ciągłości połączenia z Internetem, tu pojawia się wiele czynników, spośród których wiele jest poza naszą bezpośrednią kontrolą" - mówi Paweł Sołtysiński.

Oczywiście, CSV wykonuje kopie bezpieczeństwa danych. Nie, nie na taśmy. Za pomocą standardowego unixowego narzędzia tar obrazy partycji (system, aplikacja, baza) kopiowane są na zewnętrzny dysk przenośny podłączany do serwera za pośrednictwem standardowego w komputerach Apple portu FireWire. Proces kopiowania (podobnie jak proces odtwarzania) trwa kilkanaście minut - pojęcie okna backupowego w CSV jest praktycznie nieznane.

Nagroda dla zuchwałych

Wdrożenie w CSV pokazuje, że Mac OS X nadaje się do zastosowania jako platforma dla aplikacji biznesowych. Na tle opisanych wyżej możliwości platformy sprzętowej Apple Xserver interesująco prezentuje się też jej cena - serwer o konfiguracji podobnej do tej, z której korzysta Carsystem-Voss to wydatek rzędu 15 tys. zł, a więc tyle, co średniej klasy 2-procesorowy serwer x86. W cenie Xserver mieści się nie tylko sprzęt, ale i duży pakiet oprogramowania serwerowego. Za dodatkowe 20-30 tys. dokupić można podsystem pamięci masowych ze sprzętowym kontrolerem RAID.

Jeśli firmie zależy na uruchomieniu serwera baz danych Oracle na wydajniej platformie sprzętowej zapewniającej skalowanie w poziomie, Mac OS X stanowi ciekawą propozycję. Nie ma obawy o bezpieczeństwo danych i okna backupowe. System, którego fundamentem jest sprawdzony przez wiele lat system BSD Unix, zapewnia wiele funkcji i usług analogicznych do tych dostępnych w Windows. Jeśli jeszcze optymalizacja maszyny wirtualnej Java poprawi się, a Oracle nie ustali zaporowych cen na ten produkt, jest szansa na oszczędzenie ładnych kilku groszy.

Serwer nie stawia wymagań

Jednym z interesujących aspektów wdrożenia bazy danych Oracle na platformie Mac OS X jest fakt, że serwer bazy danych standardowo instalowany jest z uprawnieniami zwykłego użytkownika. Zainstalowanie serwera z prawami administratora wymaga pewnego zachodu i kilkakrotnego potwierdzenia, że na pewno jest się świadomym tego, co się robi. W przeciwieństwie do innych platform Mac OS X wydatnie zniechęca do takich eksperymentów - co nie znaczy, że nie jest to możliwe.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200