Netti-sovellusalusta
1996 alkaen TCP/IP verkkomaailma on ollut keskeinen
ympäristö ratkoa asiakkaiden tarpeita.
Iso osa asiakkaiden tarpeista oli perusjuttua: postia, nimipalvelua, www-sivuja.
Sitten tulivat suuremmat tarpeet: tietovarastot, postituslistat, postien
filtterointi, postista laukeavat ohjelmat, tekstiviesti-posti yhdistelmät,
ilmoitustaulut, ...
Tässä kohtaa mietin miksi käyttää sql-kantoja perustietovarastoissa ?
Miksi tieto ei voi olla tiedostoissa ja hyödyntää tiedostojen käsittelyyn
keskittyneiden käyttisten (lue Unix) ominaisuuksia suoraan ?
Tällä hetkellä 100 %:sti tiedot ovat tekstidataa, käsittelyajat erinomaisia,
koneiden tehotarve alhainen, muistintarve minimaalinen, tietojen
"ronkkiminen" käsin helppoa, ... Jos 300000 tapahturivin prosessointi
raportiksi lajiteltuna 3:lla kentällä jne. vie 3-5 s alustasta riippuen, niin
miksi tälläisiin "pieniin" tietovarastoihin tarvitaan kanta ???.
- Tietovarastot tekstidatana.Suunnistuksen koko Kisaweb-järjestelmä,
kaikki tietoalkiot on suoraan prosessoitavia - ei tiedon tulkintaa, tietoalkio
voi olla myös ksh-koodia, olio-tekniikka mahdollistaa erinomaisen
yksinkertaisesti laajentaa olioluokkia, perimä toimii. Kokonaan tehty ksh:lla.
- CGI uusiksi.
Kuinka tehdä html-cgi sovellus ilman että sivu prosessoidaan aina uudelleen ?
Moni on yrittänyt. Olen aina edustanut sitä näkemystä, että tieto
pitää prossessoida siellä missä se on tehokasta eli
käyttöliittymä käyttäjän päässä ja tieto tietovaraston vieressä.
Esim. yhdistämällä selain, javascript ja "server site prosessing", saadaan
stabiili selainnäyttö, joka tekee input-tarkistukset asiakaspäässä ja tietysti
tiedonprosessoinnin palvelimella. Esimerkki. Ko.
esimerkissä data on palvelimella yhdessä tekstitiedostossa ja sarakkeiden
nimet ensimmäisellä rivillä. Sovellusmalli on siis dynaaminen = rakastan
tuota sanaa = vapaa suomennos kuuluu "Tee ja tee vain kerran".
Ko. mallissa päivitetään lennosta asiakaspään javascript-koodia. Vain data
liikkuu, sivua ei päivitetä kokonaisuudessaan, toisin kuin cgi:ssä normaalisti.
Eli on malli 3-taso ajattelusta käyttäen standardirajapintoja: selain,DHTML,
javascript,http-palvelin. Kunhan tuohon vielä niputtaa XML:n, niin A'vot.
- Template. Rakastan sovelluksia, jotka vain prosessoivat logiikan
ja ulkoasu vaan tulee. Eli sama prosessi eri output. XML tuli
myöhemmin, sama tavoite. Omassa mallissa template-pohjat ovat tietysti
tekstitiedostoja ja jos output on html, niin template on myös
puhdas html. Esimerkkinä tälläisestä tuoteperheestä on
dokumentti-järjestelmämme:
KR,
Awot itse,
Plannja
ja
sama toisella browserilla katsottuna.
Sama tieto, useampi näkymä.
-
Esimerkki järjestelmästä, jossa yhdistetty dokumenttijärjestelmä,
ulkoinen XML- ja HTML-datan murskaus. Työkaluina pelkästään ksh+awk.
-
Awot-tuotteet
on sovellusosin tehty lähes kokonaan ksh:lla.
-
Koulutuksen sivutuotteena syntyi esimerkkimalli event-ajattelun pohjalta
tietovarastopalvelin puhtailla templete-syötteillä. Palvelin siis osaa
tallentaa tiedon tietämättä yhtään mitä tallentaa ja minne. Siis event-palvelin
= tekee töitä vain kun herättää = äärinmäisen kevyt palvelimelle, koska
moniajokäyttiksethän toimivat event-idealla.
-
SQL-kannat ym. tietovarastot saadaan liitettyä ksh-ympäristöömme
näppärällä named pipe -tekniikalla, jolloin kannan kanssa
kommunikointi komennoilla echo/print ja read tai
io-suuntauksilla.
|