| |
[ 20. July 2000]
- Jany_Masaryk
Škálovateľnosť webovskej aplikácie (časť 1)
Pri písaní webovských aplikácii sa často nemyslí na základné pravidlá, ktoré
nám môžu značne uľahčiť administráciu resp. vykonávanie neskorších zmien v
našej aplikácii. A práve čas ktorý venujeme na dobré navrhnutie rozdelenia
logiky aplikácie sa nám v budúcnosti vráti ušetrením času pri vylepšovaní
aplikácie.
Škálovateľnosť je vlastne akási "znovupoužiteľnosť". To znamená,
že aplikácia je rozdelená na niekoľko modulov , ktoré majú definované
rozhranie. To znamená, že pri zachovaní správneho použitia rozhrania modulov
môžeme vylepšovať slabé miesta modulov našej aplikácie.
Delenie aplikačnej logiky
Prvým historickým krokom bolo oddelenie dátovej a aplikačnej logiky. To
znamená, že sa oddelili dáta od samotnej aplikácie. Druhým a vyspelejším (a
samozrejme znalostne náročnejším) riešením je rozdelenie aplikácie na
dátovú, aplikačnú a prezenčnú logiku.
Princíp rozdelenia aplikácie na dátovú a aplikačnú vrstvu
Ako už zo skúsenosti vieme, na našich ASP stránkach pracujeme s dátami v
troch základných (a samozrejme od nich odvoliteľných) režimoch. Vkladanie
(insert), aktualizácia (update) a mazanie (delete) . Všetky ostatné operacie
sa dajú (a je to aj lepšie) zabezpečiť z prostredia databázy. To znamená, že
vnútri ASP stránok uplatňujeme "iba" SQL dotazovanie. A tu je vlastne návod
na oddelenie aplikačnej a dátovej logiky. Pri spojení na databázu používame
uložené procedúry (stored procedures), pri nadvazovaní spojenia (otváraní
objektu connection) používame reťazec uložený v Application premennej, ....
Príklad použitia v aplikácii
- V súbore GLOBAL.ASA máme premennú Application("conn_string") do ktorej
vložíme reťazec, pomocou ktorého sa spojíme na databázu. Potom už v každej
stránke použijeme na otvorenie spojenia premennú Application("conn_string").
- otvárame RecordSet pomocou volania uloženej procedúry s parametrami
- vykonávanie databázových operácii vykonávame pomocou uložených procedúr
(neotvárame RecodSet)
Čo nám to pomôže ? Predstavme si, že príde požiadavka zákazníka zmeniť
Oracle databázu na databázu SQL Server. Keďže máme oddelenú aplikačnú logiku
od dátovej, pracujeme už iba na dátovej časti našej aplikácie a zvyšok
ostáva nemenný. Iné by to bolo napríklad v prípade, ak by sme SQL príkazy
používali vo vnútri SQL stránky. To by sme museli meniť každý SQL príkaz v
ASP stránke. Samozrejme pri zmene tabuliek stačí pomeniť uložené procedúry a
pre zachovaní rozhrania medzi dátovou a aplikačnou logikou, nemusíme
aplikačnú časť vôbec meniť.
Na záver
Toto mal byť malý návod na čo myslieť pri tvorbe aplikácie, ktorá zodpovedá
základným princípom škálovateľnosti. V druhom diele tohoto tipu si
vysvetlíme princíp delenia aplikácie na aplikačnú, dátovú a prezentačnú
logiku (teda vyšší stupeň škálovateľnosti), čo je zároveň momentálnym
trendom smerovania webovského vývoja.
|
|
| |
|
"Škálovateľnosť webovskej aplikácie (časť 1)" | Login / vytvor konto | 0 Komentárov |
|
Za obsah komentárov je zodpovedný užívateľ, nie prevádzkovateľ týchto stránok. |
|