5 Eesti veebimaastik

Sel ajal kui kogu maailmas areneb veeb väga võimsalt e-äri suunas, ei jää ka Eesti veeb sellest arengust maha. Eestisse on tekkinud juba mitmeid Internetiportaale, Internetikaubamaju, enamus ajalehti omab võrguväljaannet, mõned neist ka reaalajas tegutsevat väljaannet. Lisaks eksisteerib ka mitmeid andmebaase, millele on liidetud ka veebiliides. Pea iga firma ja asutus peab oma aukohuseks omada veebilehte – kasvõi sellist, kus on ainult firma logo ja kontaktandmed, peaasi et see oleks olemas. Portaalid ja kaubamajad põhinevad loomulikult andmebaasidel, ajakirjad-ajalehed arenevad ka selles suunas. Isegi mõned firmad on oma veebi teinud andmebaasipõhiseks. Tundub, et areng on selles suunas, et veeb ei ole enam tavaline lingikogu – see on kujunemas suureks infosüsteemiks.

Järgnevas püütakse anda põgus ülevaade Eesti veebi olukorrast võttes aluseks veebiserverit poolt väljastatud infot ning kasutades ka veebiserverite haldajate/loojate käest saadud infot.

5.1 Eesti veebi hetkeolukord

Selleks et saada mingit ülevaadet Eesti veebiserveritest, ja neis kasutatavast tarkvarast sai 2000. aasta aprilli alguses tehtud väike uuring. Nimelt sai läbi vaadatud kõik Eesti serverid, mille nimes sisaldub lühend ‘www’. Kokku oli küsitluse tegemise hetkel Eestis registreeritud 3426 Interneti aadressi, mille nimes sisaldus ‘www’. Uurimuse eesmärgiks oli kõikide aadresside taga olevate arvutite veebiserveri kohta info teadasaamine. Selleks sai koostatud lühike programm, mis võttis järjest kõigi arvutite veebipordiga ühendust ja päris neilt juurkataloogi päiseinfot. Konkreetselt saadeti igale arvutile järgmine päring:

HEAD / HTT/1.0
Host: aadress
Päringus oli aadressi kohal iga uuritava arvuti Interneti aadress. Kõikidest arvutitest kõigest 18 kas ei töötanud või puudus nendes veebiserver – nende info kohal märgiti ‘Pole teada’.

Veebiserver peab vastavalt HTTP standardile sellisele päringule tagastama moodustatud HTTP päised. Päises sisaldub tavaliselt HTTP staatus, veebiserveri tüüp, MIME infot ja lisainfo (mida veebiserver peab vajalikuks lisada). Näiteks võib väljund olla järgmine:

HTTP/1.1 200 OK
Server: Microsoft-IIS/4.0
Date: Fri, 12 April 2000 06:14:23 GMT
Content-type: text/html
Vastuseks saadud info salvestati faili. Seejärel teisendati saadud infot selliselt, et sellest jäi järele ainult analüüsimiseks vajalik info (näiteks saadavad mõned veebiserverid eirates HTTP standardit päisepäringule tagasi ka kogu väljundi – see tuli välja jätta). Peale teatavaid muutusi andmete formaadis tekkis kogu sellest infost Microsoft Accessi ja Microsoft Exceli abiga järgmine tulemus, mille kohta ei saa küll öelda, et see peegeldab Eesti veebi tegelikku olukorda, kuid mingisuguse ülevaate see siiski annab.

5.1.1 Serveri platvorm

Selleks et teha kindlaks veebiserveri operatsioonisüsteemi, tuleb uurida serveri nimeinfot. Näiteks kui veebiserveri nimes sisaldub näiteks ‘Win32’, ‘Microsoft’, ‘Savant’, ‘Website’, ‘Sambar’ või ‘OmniHTTP’, siis võib suure tõenäosusega öelda, et tegemist on Windows-platvormiga, kuna neid sõnaosasid sisaldavad veebiserverid töötavad ainult Windows-platvormil. Kui aga veebiserveri nimes sisaldub näiteks ‘UNIX’, ‘FreeBSD’, ‘Red Hat’, ‘Linux’ või ‘Debian’, võib suure tõenäosusega öelda, et tegemist on UNIX platvormiga. Samas ‘Netware’ või ‘NOVELL’ sisaldavate veebiserverite kohta võib öelda, et need põhinevad Novell NetWare platvormil. Kõikidel muudel juhtudel (näiteks Netscape server eksisteerib mitmel platvormil ja serveri nimesse platvormi ei kirjutata) ei olnud võimalik veebiserveri nime järgi platvormi määrata ja need märgiti kui ‘Pole teada’.

Antud uurimuse tulemus on näha järgmisel joonisel:

Joonis 5.1 Veebiserveri platvormide jagunemine Eesti veebis
Joonis 5.1 Veebiserveri platvormide jagunemine Eesti veebis

Nagu tulemusest selgub kasutatakse suures osas UNIX platvormi. Väga suure tõenäosusega võib oletada, et tegemist on vabavaraga, mis on ka arusaadav, kuna Eestis üritatakse tavaliselt väga odavalt läbi ajada.

5.1.2 Veebiserverid

Erinevaid veebiservereid oli kokku 73, nende seas oli näiteks Apache serveri eri versioone 21. Kuna eri serverite eri versioone oli liiga palju, sai kõik versioonid liidetud üheks tervikuks. Eraldi pole välja toodud veebiservereid, mida oli alla 20 eksemplari (näiteks Oracle veebiserver). Tulemusest annab ülevaate järgmine joonis:

Joonis 5.2 Veebiserveri tüüpide jagunemine Eesti veebis
Joonis 5.2 Veebiserveri tüüpide jagunemine Eesti veebis

Kui võrrelda neid tulemusi näiteks firma E-Soft Incorporated ülemaailmse uurimuse Eesti osaga (vaadeldav sama aja kohta aadressil allikas [28, vaata »]), siis on tulemused küllaltki sarnased.

Kui vaadelda populaarsemaid servereid eraldi, siis näiteks Apache serverid jagunesid järgmiselt (vähem kui 20 esinemisega versioonid välja jäetud):

Joonis 5.3 Apache serveri versioonide jagunemine Eesti veebis
Joonis 5.3 Apache serveri versioonide jagunemine Eesti veebis
ja Internet Information Server versioonid järgmiselt:
Joonis 5.4 Internet Information Server versioonide jagunemine Eesti veebis
Joonis 5.4 Internet Information Server versioonide jagunemine Eesti veebis

Kui aga vaadelda eraldi näiteks Windows-platvormi, siis jagunevad veebiserverid tüüpide järgi järgmiselt (hõlmatud on veebiserverid, mille nimest oli võimalik välja lugeda, et tegemist on Windows platvormiga):

Joonis 5.5 Windows platvormi veebiserverite jagunemine Eesti veebis
Joonis 5.5 Windows platvormi veebiserverite jagunemine Eesti veebis

5.1.3 Serveripoolsed skriptid

Veebiserveri poolt edastatava info põhjal on võimalik teha järeldusi ka selle kohta, milliseid serveripoolseid skripte on võimalik seal kasutada. Näiteks Internet Information Server sisaldab alates kolmandast versioonist vaikimisi Active Server Pages (ASP) kasutamise võimalust. Kui aga Apache serverisse on moodulitega lisatud PHP või näiteks ActivePerl, siis kajastub see tavaliselt ka serveri nimes. Samuti on võimalik serveri poolt saadetavate küpsiste järgi kindlaks teha kasutatavat skriptivahendit – sellist moodust kasutab näiteks ASP ja ColdFusion. Lisaks võib näiteks PHP lisada veebiserveri väljundisse iseloomulikke lisapäiseid. Ja otse loomulikult esines servereid kus oli võimalus kasutada mitut skriptivahendit.

Kogu selle info põhjal tekkis teatav ülevaade serveripoolsete skriptide kasutamisest. Jooniselt on jällegi välja jäetud liiga väikese esinemisega (alla 20 eksemplari) skriptivahendid (näiteks jääb siit välja ColdFusion). Väljend ‘Pole teada’ määratleb neid servereid, mille päise infost polnud võimalik skriptivahendit leida:

Joonis 5.6 Serveripoolsete skriptivahendite jagunemine Eesti veebis
Joonis 5.6 Serveripoolsete skriptivahendite jagunemine Eesti veebis

5.2 Asjaosaliste arvamus

Selleks, et saada veelgi lähemat ülevaadet, sai koostatud küsitlus, mida saadeti erinevatele veebi aktiivselt kasutavatele firmadele. Küsitlusega loodeti saada arvamusi asjaga tegelejatelt. Küsitluse said eesti pangad, portaalid, Internetikaubamajad, mõned ajalehed, mõni firma ja mõne veebiliidesega andmebaasi haldaja. Küsitluse said kokku 27 veebi haldurit, tagastas selle 13, andmete avaldamisest keeldus üks. On täiesti loomulik, et need numbrid on liiga väikesed tegemaks mingeid põhjapanevaid järeldusi, kuid loodetavasti annab see küsitlus siiski mingi ülevaate.

5.2.1 Küsitluse tekst

Täieliku ülevaate huvides on järgnevas esitatud küsitluse täielik tekst (edaspidise viitamise huvides on küsimused nummerdatud):

1. Kas Teie veebis on kasutatud andmebaasi?
2. Mis platvormil kasutate andmebaasiserverit?
3. Millist andmebaasiserverit kasutate?
4. Mis platvormil kasutate veebiserverit?
5. Millist veebiserverit kasutate?
6. Kas veebiserver ja andmebaasiserver asuvad samas füüsilises serveris?
7. Milline järgnevatest on täpseim Teie veebilahenduse iseloomustamisel (lisaks tavalistele HTML-lehtedele):
a) Serveripoolsed skriptid
b) ISAPI/NSAPI (või mõni muu analoog – paluks märkida)
c) CGI
8. Kui kasutate serveripoolseid skripte, siis miks?
8.1. Kui kasutate serveripoolseid skripte, siis mida täpsemalt? (Näiteks PHP, ASP, CFM, Perl)
8.2. Miks otsustasite just selle skript-vahendi kasuks?
8.3. Kas valitud serveripoolne skript-vahend rahuldab Teie nõudmisi? (kui ei, siis miks)
8.4. Kas pidite lisaks skript-vahendi poolt pakutud funktsionaalsusele ka ise midagi juurde programmeerima?
9. Kui kasutate CGI lahendust, siis miks?
10. Kui kasutate ISAPI/NSAPI lahendust, siis miks?
11. Mis vahendeid kasutate andmete saamiseks andmebaasist? (Näiteks ADO, ODBC, JDBC)
11.1. Miks otsustasite just selle vahendi kasuks?
11.2. Kas valitud vahend rahuldab Teie nõudmisi? (kui ei siis miks)
12. Kui vaadelda veebi mitmekihilise infosüsteemina, siis mitmekihiliseks hindate oma veebi? Kena oleks, kui tooksite ka kihid eraldi välja. Näiteks on väga tavaline kolmekihiline süsteem: 1. andmebaas; 2. programm (veebiserveris); 3. kasutajaliides (brauseris).
13. Kas Teie arvates on Teie veeb piisavalt turvaline – st kas Te ei karda andmete turvalisuse pärast? (võib ka lisada, miks)
14. Kas Teie arvates on üldse mõistlik koostada veebi andmebaasipõhisena? Miks?
15. Teiepoolne lõppkommentaar oma veebilahendusele:
16. Teiepoolne lõppkommentaar antud küsimustikule:

Peab kohe mainima, et mõne küsimuse sõnastus ei olnud võibolla kõige parem ja tekitas seetõttu teatavat segadust. Näiteks Perli paigutamine serveripoolsete skriptidega ühte oli võibolla viga, kuna Perli skriptid saavad olla ka näiteks CGI skriptid, samas ActivePerl leiab kasutust serveripoolse skriptina.

5.2.2 Tulemused

Järgnevas antakse ülevaade küsimuste kaupa neile saabunud vastustest.

  1. See küsimus oli määrava tähtsusega ja sellele eitavalt vastamine oleks tähendanud edasisest vastamisest loobumist. Ükski saabunud vastustest ei olnud eitav.
  2. Andmebaasiserver asub erinevatel platvormidel alustades Red Hat Linuxist ja lõpetades Windows2000 Advanced Serveriga.
  3. Andmebaasiserveritest oli mitmel pool mainitud MySQL süsteemi, kuid samas esines ka näiteks Microsoft SQL Server ja Oracle serverit.
  4. Veebi platvormina kasutatakse rohkem kui pooltel juhtudel Linux distributsioone, ülejäänud juhtudel on kasutuses Windows-platvorm.
  5. Veebiserverina mainiti põhiliselt Apache serverit, Windows platvormil aga Internet Information Serverit.
  6. Suuremate süsteemide korral asuvad andmebaasiserver ja veeb eri serverites, väiksematel juhtudel samas serveris.
  7. Põhiliselt kasutatakse veebi rakenduste loomiseks serveripoolseid skripte, mõni süsteem kasutab ka ISAPI lahendust, samas aga leidub ka CGI lahendusi.
  8. Serveripoolsete skriptidena kasutatakse põhiliselt PHPd ja ASPi, kuid ka ColdFusion leiab kasutamist. Skriptivahendi plussidena mainiti põhiliselt selle lihtsust ja haldamise mugavust. Enamusel juhtudel tuli lisaks standardvahenditele ka ise midagi juurde luua.
  9. Kui kasutatakse CGId, siis põhiliselt kasutatakse Perl skripte ja põhjendusena tuuakse Perli mugavusi.
  10. ISAPI rakenduse kasutamise põhjendusena tuuakse asjaolu, et see on standard.
  11. Andmete saamiseks andmebaasist kasutatakse kas andmebaasiserveri vahendeid, Microsoft ActiveX Data Obejcts vahendeid või ODBCd.
  12. Veebi hinnatakse väga erinevate tasemetena, seega mainitakse, et veeb võib olla kahe kuni kuuekihiline. Kahekihilise süsteemi korral peetakse üheks kihiks andmebaasi ja teiseks kõike muud; kuuekihilise süsteemi korral toimub andmete saamine andmebaasist läbi mitme eri kihi.
  13. Veebi turvalisuse hindamisel kõiguvad arvamused küllaltki palju: osa arvab, et kõik, mis on inimese poolt loodud, on ka inimese poolt murtav, teised seevastu peavad oma süsteemi väga turvaliseks.
  14. Veebi loomisel andmebaasipõhisena ollakse ühisel arvamusel, et kui veeb on vähegi dünaamilist laadi, siis on andmebaasi põhine veeb ainuke lahendus.
  15. Enda veebi hinnatakse tavaliselt heaks, aga mööndakse, et alati saab paremini.