Architektura

Znalostni_Baze_Architektura

Architektury IS a systémů TPV s ohledem na komunikaci

File/Server

 

Typická architektura aplikací, ktere jsou určeny pro jednouživatelský provoz (Excel, Access, FoxPro, Clipper, MS Access…). Využitím lokálních sítí Novel, Microsoft

apod. bylo možné sdílet tyto aplikace mezi více uživatelů, ale vzhledem ke své vnitřní architektuře, velmi omezenému (omezené možnosti zamykání dat, určit úroveň

zabezpečení, transakce apod.). Architektura těchto systémů je rozdělena do dvou částí:

 

samotná aplikace, která v sobě zahrnuje prezentační, aplikační a správu datové vrstvy  

soubory ve kterých jsou uložena data (dbf, xls, mdb apod.)

Aplikace File/Server představuje vzhledem k dnešním požadavkům na komplexnost funkcí balík mnoha souborů, které mají několik desítek až stovek MB. V případě,

že takováto aplikace pracuje v počítačové síti a je instalována na serveru z důvodů centrální správy, představuje i prosté spouštení kritickou zátěž. Dalším problémem

je mechanismus práce s daty, protože tyto aplikace zpracovávají data v podstatě na straně klienta a po jejich zpracování je přesouvají na server (přesouvání velkých

balíků dat a problémy s bezpečností). Z uvedeného vyplývá, že systémy postavené na této architektuře nejsou vhodné pro realizaci aplikací informačních systémů.

 

Dvouvrstvá architektura Klient/Server

Dvouúrovňová architektura systémů, které většinou

vznikly převodem ze systémů využívajích file server architekturu

základní architektura starších řešení informačních systémů v prostředí UNIXu, DOSu

Tato architektura většinou neumožňuje provoz v rozsáhlejších sítí (ad 1.), protože kladou příliš velké nároky na kapacitu (šířku) přenosového pásma sítě – data jsou

uložena na databázovém serveru (mnohdy i velmi výkoném), ale samotné zpracování dat probíhá na klientském počítači (porovnejte například výsledek rozpadu

kusovníkového stromu s objemem dat, který je nutný zpracovat). Vhodně naprogramované starší informační systémy jsou sice někdy schopné pracovat i v rozsáhlých sítích,

ale neoplývají příliš velkým uživatelským komfortem a možnosti jejich rozšiřování a úprav jsou velmi omezené. U této architektury platí co bylo uvedeno výše –

i prosté spouštění více klientů této aplikace (tlustý klient obvykle znamená velkou aplikaci) znamená pro síť kritickou zátěž.

 

Třívrstvá architektura Klient/Server – tenký klient

Třívrstvá architektura klient/server je logickým rozšířením základní dvoúrovňové  architektury klient/server. Základní princip je založen na minimalizaci přenosu objemu

dat mezi jednotlivými počítači či aplikacemi. Znamená to, že realizace požadované funkce IS (například rozpad kusovníkového stromu výrobku) je prováděna na počítači

IS (databázový, případné aplikační server) s vysokým výkonem, výsledek této funkce je potom přenesen na klientský počítač – tzn. že klientský počítač plní pouze funkci

prezentační. Samotné zpracování obchodní logiky je řešeno výhradně prostředky serveru aplikace. Toto řešení umožňuje zcela zásadně minimalizovat objem dat

přenášených po síti a umožnit tak i přístup klientům přes nízkokapacitní spoje na server aplikace bez znatelného zpomalení provozované aplikace a současně s minimálním

zatížením používaného přenosového média. Z hlediska informačních systému je uvedené využití třívrstvé architektury klient/server možné u takových aplikací, které využívají

výkonné databázové stroje s bohatými jazykovými možnostmi (Oracle, Microsoft a Sybase) nebo jsou naprogramovány přímo pro aplikační servery (např. Sybase Jaguar

CTS apod.). Aplikace důsledně vytvářené jako třívrstvé se obyčejně vyznačují velice malým klientem řádově jednotky, maximálně desítky MB. U aplikací tohoto typu

je možné poměrně jednoduše zajistit spoušténí jejich modulů ze serveru. Kromě toho jsou tyto aplikace méně náročné na HW vybavení a velikost paměti – například v 

případě TPV2000Plus představuje velikost modulu cca. 12 MB proti cca. 150 MB u klasicky vytvořených dvouvrstvývh Klient/Sever aplikací.

 

Hybridní aplikace (Klient/Server v kombinaci s File/Server)

Vzhledem k tomu, že mnozí tvůrcové aplikací IS mají zásadní problémy s převodem svých starších Klient/Sever nebo File/Server aplikací na novou moderní strukturu,

volí zvláštní metodu – kombinují vícevrstvou Klient/Server a File/Sever architekturu. Znamená to, že jenom část datových struktur převedou na SQL server a další data

zůstavají uložena v nativních formátech FoxPRO, MS Access, Clipper… Tento hybrid může na uživatele budit falešný dojem moderně pojaté aplikace, avšak skutečností

jsou potencionální problémy s bezpečností, zátěží sítě, údržbou datových struktur. Doporučujeme prověřit vnitřní architekturu vašeho IS, protože tato architektura

představuje vysoké riziko z mnoha důvodů (viz výše).

 

IS využívající WEB rozhranní (MS Internet Explorer, Opera, Netscape)

Nejnovějším trendem při vývoji aplikací je využití internetového prohlížeče ke komunikaci uživatele s informačním systémem. Struktura aplikací, které jsou vyvíjeny

pro tuto platformu plně odpovídá modelu třívrstvé architektury klient/server (např. platforma .NET). Vzhledem k tomu, že ke komunikaci s uživatelem se využívá

internetový prohlížeč, je ovládání takovéto aplikace silně standardizováno a i jeho údržba je snadná a velmi efektivní. Nevýhodou jsou nedostatečné možnosti

pro tvorbu komfortního ovládání, tak aby ho bylo možno využít i pro rutinní práci (což v mnoha případech je právě práce s informačním systémem).

 

Podpůrné systémy pro aplikace pro komunikaci

CITRIX, MetaFrame, Sybase Web Deployment Kit apod.

Komunikace s využítím produktů CITRIX, MetaFrame, Sybase WDK apod. je založena na využití protokolu ICA (Integrated Console Architecture). Tento protokol

zajišťuje optimalizovanou komunikaci koncového zařízení se serverem. Protokol ICA je založen na přenosu (v některých případech komprimovaném) příkazů grafického

rozhranní (GUI) operačního systému.

 

image1808845184

 

Z uvedeného obrázku vyplývá, že k přenosu mezi klientským počítačem a serverem dochází vždy, když dojde ke změně na vstupně/výstupním zařízení (obrazovka,

tiskárna, klávesnice, myš atd.). Přestože se přenášejí pouze příkazy GUI je přenosové médium zatěžováno i v případě, kdy nedochází ke komunikaci se serverem

provozované aplikace (např. prohlížení dokumentu – listování po jednotlivých obrazovkách, pohyby myší apod.). Z pohledu informačních systému a podpůrných

aplikací IS je uvedené řešení výhodné pro zpřístupnění takových aplikací na síti, které ke své činnosti využívají souborově orientované databáze (dBase, FoxPro,

Clipper, MS Access) a především u kterých je předpokládané využití minimální (např. nástroje pro vzdálenou administraci systémů). Mnohé aplikace vytvořené

nativně jako třívrstvá Klient/Server architektura nabízejí optimalizovanější způsoby komunikace při výrazně menší zátěži než řešení pomocí ICA

protokolu.

 

Architektura systému s ohledem na konfigurovatelnost

 

Kompaktní aplikace

Protože v aplikaci je uložena jak logika tak i prezentační část, je nutné vždy při jekékoliv změně nebo úpravě překompilovat celý zdrojový program a znova ho

distribuovat uživatelům. Aplikace s takovouto architekturou jsou podstatně méně náročné na svůj vývoj, ale velmi náročné na svojí údržbu a správu. Proto je tento

přístup výhodný pro relativně malé a samostané aplikace, které využívá zanedbatelný počet uživatelů a zároveň není třeba, aby aplikace mezi sebou komunikovali

a to buď přímo nebo s využitím databázového nebo file serveru (Access, FoxPro, Excel apod.). Jeden z problémů kompaktních aplikací je přílišná složitost z hlediska

obsluhy, protože je nabízené množství funkcí, které uživatelů využijí jenom z části.

 

Vícevrstvé aplikace

Pro systémy které mají neustále odrážet aktuální potřeby uživatelů a mají zároveň mezi sebou spolupracovat je třeba, aby architektura systému umožňovala snadnou

úpravu nebo změnu obchodní logiky, případně prezentační vrstvy. V tomto případě je výhodné oddělit jednotlivé vrstvy systému (prezentační, aplikační a datová vrstva)

a v případě řešení rozsáhlejší problematiky rozdělit ji i z funkčního hlediska do jednotlivých modulů - komponent. Požadavek příslušné změny je potom možné realizovat

za velmi krátkou dobu (využití vzdáleného přístupu, internetu apod) a to pouze se zásahem do příslušné vrstvy systému. Vícevrstvé aplikace v případě využití tenkého

klienta nabízejí většinou uživatelům optimalizovaný soubor funkcí a tím i jednodušší ovládání.

 

Architektura systému s ohledem na integrovatelnost

 

On-line a off-line komunikace

Pro volbu režimu přenosu dat mezi systémy je určující jejich potřeba v ostatních systémech a čas za který dochází k jejich změnám. U dat, které se mění zcela

minimálně (například číselník měrných jednotek) je možné data přenášet v dávkovém režimu (off-line přenos). Naproti tomu data, která jsou velmi často aktualizována

je nutné přenášet vždy, když dojde k jejich změně a využívat všech dostupných prostředků pro zachování jejich integrity, především mezi systémy (on-line přenos s

využitím transakčního zpracování dat). Dnešní možnosti tvorby komunikačních rozhraní mohou obsahovat účelnou kombinaci obou režimů. Volba on-line a off-line

režimu závisí tedy na technických možnostech, tak i na množství dat měněných v čase.

 

Jedna datová základna a komunikace s využitím komunikačního rozhranní

Častým problémem při nasazování různých aplikacích, které mohou využívat společný databázový server je společné využívání databázových entit (tabulek).

Prakticky to znamená, že nad jednou entitou operuje několik aplikací od různých dodavatelů. To je zásadní problém, který prakticky znemožňuje vlastní vývoj a

především případné úpravy a konfigurace jednotlivých aplikací. Jedna datová základna si vynucuje speciální režim při různých formách update a upgrade, protože

vyžaduje i při minimální změně v datových strukturách zásahy do všech aplikací (je to proto i zdroj kritických problémů). Tento problém lze výrazně eliminovat pouze

využitím standardizovaných komunikačních entit a funkcí, které tvoří komunikační rozhraní každé aplikace. Pod společnou správou je potom pouze toto komunikační

rozhranní, což je podstatně méně náročné na údržbu a vzájemnou komunikaci. Tento způsob komunikace umožňuje samostatný vývoj jednotlivých komponent

informačního systému a nevytváří redundantní omezující vazby mezi aplikacemi. Komunikace s využitím komunikačního rozhraní navíc umožňuje volit optimalizovaný

způsob update a upgrade komponent dle skutečných potřeb.

 

Varianta nonSQL databáze IS a komunikace s řešením TPV:

 

image1314250069

 

Varianta databáze typu SQL Oracle, Informix, MS SQL, Progress….:

 

image1058547796

Architektura systému s ohledem na bezpečnost

 

Souborové aplikace

Při práci v heterogenním protředí několika aplikací, které spolu potřebují komunikovat je důležité udržet vzájemnou integritu dat v jedntlivých aplikací. U aplikací,

které jsou postaveny na architektuře file serveru (Clipper, FoxPro, dBase, Access apod.) vede víceuživatelský přístup k porušování samotné vnitřní integrity systému

dat (indexové soubory) – v tomto okamžiku je problémové zajistit integritu i vlastních dat. Naprosto je vyloučená i vlastní reakce na tuto událost, která by zajistila

vzájemnou integritu dat mezi aplikacemi. Dalším problémem aplikací, které zpracovávají data na lokálních počítačích a po zpracovaní je přesunou na server, je

problém výpadků napětí, protože i když je serven zajištěn UPS zdrojem napájení, lokální stanice nebývají zajištěny. Proto výpadek lokální stanice má za následek

porušení integrity dat na serveru. Tento problém však nevzniká jenom u výpadků napájení, ale i u jakýchkoliv jiných přerušení činnosti klientského programu

(chyba v programu, datech…).

 

Transakční aplikace

Informační systémy, které využívají moderní databázové servery jsou schopny reagovat na nesrovnalosti nebo problémy vlastních dat a zajistí tak, aby data v případě

nějaké chyby byly uvedeny do původního stavu. V případě, že komunikaci mezi jednotlivými aplikacemi zajišťuje specializované komunikační rozhraní (které využívá

i vnitřních transakcí databázového serveru) je možné rozšířit působnost transakcí nejenom na více aplikací, ale i na více databázových serverů. Jakákoliv chyba,

která by měla za následek vzájemnou nehomogenitu dat vyvolá  příslušný program, který oznámí všem zúčastněným stranám vzniklý problém a uvede data do

původního (homogenního) stavu.

 

Architektura TPV2000Plus

Architektura TPV2000Plus je postavena na modelu třívrstvé architektury typu klient/server. Klientská část TPV2000Plus tvoří prezentační vrstvu systému s ohledem na

pravidla a zvyklosti v rodině produktů Microsoft Office.  Serverovou část systému TPV2000Plus tvoří databázový server Microsoft SQL 7/2000 a aplikační část serveru

je tvořena programy v T-SQL, případně v C, JavaScript apod.

 

image1800707844

 

Výhoda toho uspořádání je v tom, že veškeré služby a funkce nad daty TPV zajišťuje aplikační část serveru TPV2000Plus – to umožňuje stejný přístup k datům a

funkcím TPV2000Plus, jak klientským aplikacím TPV2000Plus tak i dalším aplikacím a informačním systémům provozovaných v rámci informační struktury daného řešení.

Toto řešení zcela minimálně zatěžuje síťovou infrastrukturu (naprosto minimální požadavky na šířku přenosového pásma – srovnatelné s provozem www serveru)

a umožňuje velmi jednoduchou administraci celého systému.ˇBezpečnost dat TPV2000Plus je na systémové úrovni zajištěna řízením přístupových práv k SQL serveru

a přístupen do domény Microsoft Windows s možností rozšíření o specializované bezpečnostní systémy s využitím kryptografických metod. Nad systémovou

částí TPV2000Plus je vystavěna politika logických přístupových práv k jednotlivým objektům (rozpiska, postup, atd...) a funkcím (založení položky, rozpisky,

schválení postupu, rozpisky atd...) v TPV2000Plus. Politika logických přístupových práv využívá ke své činnosti dvou klíčů, které se vždy při požadavku realizace

nějaké operace vzájemně porovnávají.

 

Systém TPV2000Plus je navržen tak, že využívá nejnovějších poznatků ze všech výše uvedených oblastí.

 


Další odkazy:

 

Vyhledávání, filtrování

Klávesové zkratky

Kontextové menu

Chybová hlášení

 

Technická podpora

Kontakty

 

Copyright © BB consult engineering s.r.o. 1998-2025.

All Rights Reserved.