Sz@rk Server - schemat działania systemu

Wpis #31 z dnia: 09-05-2011

System Sz@rk ERP napisany jest w architekturze wielowarstwowej (n-tier). Standardowo kupując moduł Sz@rk, np. Księga Express PRO, instalujemy go jako typową aplikację C/S na pojedynczym komputerze, na którym dodatkowo należy wcześniej zainstalować bezpłatną wersję MS SQL Server Express 2005/2008. Użytkownik pracuje jak w typowej aplikacji desktop, nie potrzebując nadto zagłębiać się w nową technologię.

Taki sposób dystrybucji programów, pozwala na szybką i prostą instalację nawet przez początkujących użytkowników.

Pełnię możliwości systemu wykorzystamy dopiero po rozdzieleniu poszczególnych warstw i instalacji odrębnych modułów. Każda z warstw instalowana jest oddzielnie i odpowiada za swój zakres funkcjonalny. Możemy wyróżnić trzy podstawowe warstwy:

  • Składowanie danych - kod umieszczony w bazie danych MS SQL Server
  • Przetwarzanie danych, obliczenia, przygotowywanie wydruków - kod umieszczony w serwerze aplikacji Sz@rk Server
  • Interfejs użytkownika - prezentacja danych w aplikacji klienta

Bardzo ważnym elementem jest warstwa środkowa Sz@rk Server, przyjmująca polecenia od klientów za pomocą swoich serwisów i po przetworzeniu danych zwracająca gotowy rezultat, który może być zaprezentowany w interfejsie użytkownika. Uniwersalność tego rozwiązania pozwala dodatkowo korzystać z usług takich serwisów (SOA) przy wykorzystaniu różnych technologii. Poszczególne moduły Systemu Sz@rk są tego najlepszym przykładem, gdyż do programowania wykorzystujemy Delphi oraz Visual Studio /C#. Technologia wybierana jest w zależności od potrzeb i możliwości danego środowiska.

Na rysunku poniżej przedstawiono ogólny schemat instalacji i działania systemu Sz@rk

Do instalacji MS SQL Server 2005/2008 wydzielamy jeden komputer, pełniący rolę serwera. W większych firmach będzie to zapewne komercyjna wersja SQL i Windows Server, natomiast dla mniejszych wymagań wystarczy Windows PRO (Vista lub 7) oraz bezpłatna wersja MS SQL Server Express 2005/2008.

Aplikację Sz@rk Server instalujemy na tej samej maszynie co MS SQL Server lub na innym komputerze w tej samej sieci lokalnej. Umieszczenie ich razem, zwiększy wydajność systemu, gdyż dane będą przetwarzane w obrębie tej samej maszyny. Konfigurację Sz@rk Server omówimy w kolejnym artykule.

Na rysunku przedstawiono dwa sposoby dostępu do bazy danych MS SQL Server:

  • Za pomocą klientów wykonujących bezpośrednie połączenia z bazą SQL (komputery te oznaczono jako Sz@rk C/S).
  • Za pomocą klientów korzystających z serwisów Sz@rk Server, który z kolei wykonuje połączenia z bazą SQL (komputery te oznaczono jako Sz@rk Client).

Oczywiście nic nie stoi na przeszkodzie, aby wszystkie aplikacje klienckie korzystały z usług Sz@rk Server. Docelowo będzie to nasz podstawowy tryb pracy proponowany dla sieciowego, wielostanowiskowego środowiska.

Wszystkie wyżej wymienione elementy systemu umieszczone są wewnątrz firmy i oddzielone od Internetu za pomocą zapory (firewall) oraz router 'a.

Ten sam klient, który pracuje wewnątrz firmy poprzez serwisy, może wykonywać zdalne połączenia na zewnątrz firmy i łączyć się z Sz@rk Server za pomocą Internetu. Pozwala to na swobodny dostęp do danych i aplikacji z dowolnego miejsca i dowolnego komputera z systemem Windows (co najmniej XP). Możemy więc pracować w firmie, w domu, u aktualnie obsługiwanego Kontrahenta, w podróży z laptopa łączącego się z Internetem za pomocą GSM. Za każdym razem mamy do dyspozycji w pełni funkcjonalną aplikację.

Potrzeb i przykładów wykorzystywania aplikacji z każdego miejsca w dowolnym czasie nie trzeba nikomu wskazywać.

W dzisiejszych czasach dynamiczne prowadzenie Działalności Gospodarczej wymaga zastosowania odpowiednio przygotowanych aplikacji mobilnych.

Najważniejsze zalety technologii wielowarstwowej w systemie Sz@rk:

  • Sz@rk Server jest bezpłatny. System skierowany jest dla małych i średnich firm, nie dysponujących dużym budżetem. Zwykle technologię wielowarstwową oraz usługi w formie serwisów (SOA) spotkamy tylko w bardzo "dużych" i kosztownych systemach. Jako jedni z pierwszych oferujemy nowoczesną technologię bez dodatkowych opłat w systemie Sz@rk i nie jako okrojoną ciekawostkę, ale jako pełny zintegrowany system do obsługi firmy.
  • Nie potrzebujemy Serwera Terminali ani licencji klienckich dla poszczególnych stanowisk do wykonywania połączeń "terminalowych". Jako samowystarczalny, Sz@rk Server nie wymaga także dodatkowych usług i licencji terminalowych.

Nie ma więc kosztów dodatkowego serwera (PC) ani systemu, nie ma serwera terminali i dodatkowych opłat za licencje. Nie ma wreszcie kosztów administrowania całą architekturą.

  • Ponieważ nie ma typowej technologii terminalowej, nie logujemy się do pulpitu innej maszyny, lecz pracujemy "na własnym komputerze" z jednoczesnym dostępem do innych aplikacji i zasobów naszego komputera. Bez dodatkowych zabiegów mamy dostęp do wszystkich urządzeń (w tym drukarek i drukarek fiskalnych) oraz lokalnych zasobów komputera na którym pracujemy. Uruchamiamy Aplikację Sz@rk jak "zwykły" program, resztę System Sz@rk wykonuje automatycznie.
  • Klient Sz@rk nie zestawia bezpośrednich połączeń do bazy SQL, co znacznie podnosi bezpieczeństwo systemu (klient nie zna lokalizacji ani haseł dostępu do SQL), oraz ogranicza wykorzystywane zasoby serwera SQL (nie ma dodatkowych połączeń "connections", ponieważ dostępem do bazy SQL zarządza Sz@rk Server za pomocą swojej puli połączeń).
  • Model pracy bez bezpośredniego dostępu do bazy SQL ma dodatkowe zalety:
    • Nie potrzebujemy dodatkowych licencji na Server SQL
    • Nie ma problemu z zerwaniem połączenia z Serwerem SQL i otwartymi połączeniami, a aplikacja kliencka wznowi pracę po przywróceniu połączenia, np. dostępu do Internetu.
    • W mniejszych instalacjach doskonale sprawdzi się bezpłatna wersja MS SQL Server Express.
  • Nie ma dodatkowych opłat za licencje "mobilne", wystarczy że posiadamy licencję(e) na określony moduł Sz@rk. Nie ma żadnych kluczy sprzętowych ani innych ograniczeń w komputerach klienckich, dlatego nie trzeba nic instalować ani rejestrować. Po prostu kopiujemy pliki do wybranego katalogu za pomocą komendy xcopy, lub uruchamiamy program np. z pendrive.
  • Do instalacji całego systemu wystarczą typowe komputery, które użytkownicy posiadają już w swoich firmach i domach, bez potrzeby ponoszenia dodatkowych kosztów na sprzęt i oprogramowanie (pod warunkiem że będą to komputery z co najmniej systemem Windows XP).
  • Sz@rk Server pracuje w oparciu o serwisy, udostępniane klientom. Z jego usług będzie można dodatkowo skorzystać pisząc własne moduły, wykorzystujące np. protokół SOAP. Jednak System Sz@rk wewnętrznie nie przesyła danych w formie XML, korzysta z wydajniejszego protokołu binarnego, w którym dane dodatkowo mogą być szyfrowane i/lub kompresowane. (Więcej w kolejnym dokumencie dotyczącym konfiguracji Sz@rk Server).
  • Bezpośrednio z serwisów Sz@rk i protokołu binarnego można skorzystać przy zastosowaniu Sz@rk API.
  • Chociaż System Sz@rk ze sowimi modułami jest produktem gotowym do natychmiastowego użycia, TGSoft oferuje możliwość rozbudowy systemu "na Zamówienie". Możemy go rozszerzać o kolejne serwisy lub moduły klienckie. W tym celu należy kontaktować się bezpośrednio z TGSoft w celu ustalenia szczegółów.
  • Sz@rk to otwarty, gotowy na przyszłość system. Wykorzystuje prężnie rozwijającą się architekturę, która wytyczając ścieżki na następne lata, pozwoli na wykorzystanie i angażowanie własnych zasobów w rozwój systemu.