\"/
\"/ \"/    

www.muni.cz ve verzi 2006 (2)

Jaromír Ocelka, ÚVT MU
Ročník XVII - číslo 2, prosinec 2006
Citace: J. Ocelka. www.muni.cz ve verzi 2006 (2). Zpravodaj ÚVT MU. ISSN 1212-0901, 2006, roč. XVII, č. 2, s. 6-9.
verze pro tisk: PDF
Tematické zařazení: Informační systémy MU, Webové zdroje a technologie
 předchozí článek | následující článek 

V minulém čísle Zpravodaje jsme v základních rysech představili novou verzi internetové prezentace MU dostupné na adrese http://www.muni.cz. V tomto pokračování přinášíme bližší pohled na její technické podhoubí, tedy popis hlavních principů technického řešení, kompletně navrženého a realizovaného na ÚVT1.

1  Architektura

Na základě analýzy požadavků na novou verzi prezentace www.muni.cz a dosavadních zkušeností z provozu předchozí verze byla vytvořena zcela nová vnitřní architektura prezentace.

Běžné webové servery nabízí jako jednu ze základních vlastností poskytování html stránek, které jsou již hotové uloženy na disku webového serveru. Pokud chceme publikovat data z databáze, nemusíme z ní vše vygenerovat do html stránek na disk, ale můžeme využít možnosti skriptování na straně serveru, kdy určité stránce odpovídá konkrétní program, jehož výstup je odeslán návštěvníkovi do prohlížeče. Tímto způsobem, za využití technologie ASP (Active Server Pages) a s drobnými vylepšeními (viz [1]), byly vystavěny předchozí verze prezentace.

Pro novou verzi prezentace byl navržen a následně realizován vlastní specializovaný aplikační server. K realizaci byla využita technologie Microsoft .NET. Velká část obsahu předchozí prezentace je publikována i v nové verzi - byť v jiném grafickém řešení a v jiné navigační struktuře (seznamy zaměstnanců, přehledy projektů, publikací atd.) - a tak bylo nutné najít způsob, jak ponechat funkčním i programový kód původních ASP stránek (nebylo žádoucí přepisovat prakticky beze změny kód z jednoho programovacího jazyka do druhého). Z těchto důvodů byl navržen řídící dispečer, který přijímá požadavky na poskytnutí stránek a zajišťuje jejich zpracování odpovídající technologií na úrovni aplikačního serveru. Pro generování vlastního obsahu webové stránky je tak obecně možné použít téměř libovolný programovací jazyk a technologii.

Protože www.muni.cz poskytuje informace pouze na čtení a neumožňuje je měnit, byly použity různé vyrovnávací paměti (cache) s dobou expirace až několik minut. Například vlastní programový kód stránky má k dispozici cache, kde si může uložit různě předpřipravená data specifická pro konkrétní typ stránky. Společné číselníky jsou také poskytovány z cache, které obhospodařuje jádro systémů. Při požadavku na webový server je tedy možné, že při jeho zpracování vůbec nebyla použita databáze a jako obsah stránky byly vráceny části (případně celá stránka), které byly před pár vteřinami vráceny již jinému návštěvníkovi.

Běžné použití webového serveru nevyžaduje téměř žádnou konfiguraci, webový server najde dle požadované adresy příslušnou stránku na disku v totožné adresářové struktuře. Aplikační server implementovaný pro www.muni.cz přináší mnohem širší možnosti, a proto je nutné každou stránku www.muni.cz náležitě zaregistrovat, aby dispečer věděl, jak má http požadavek vyřídit. Mezi povinné konfigurační údaje patří např. název stránky, definice nadřízených stránek (pro správnou funkčnost drobečkové navigace), určení programového kódu, který generuje vlastní obsah stránky, a adresa stránky. Přímo v konfiguračním souboru je dokonce možné definovat obsahy jednoduchých rozcestníkových stránek. Pro zajímavost - současná konfigurace webu MU ve formátu XML je popsána na 7000 řádcích.

2  Frag

Na stránkách realizovaných v novém i starém programovém kódu je řada společných prvků (navigační abeceda, způsob zobrazování externích odkazů atd.), jejichž implementaci nebylo žádoucí duplikovat v obou použitých technologiích (ASP i .NET). Místo vzájemného volání funkcí v různých technologiích jsme proto využili jakousi formu asynchronního volání. Programový kód realizující www stránku produkuje výstup v XML, který dispečer ještě následně analyzuje. Najde-li zmíněná volání funkcí, provede je a výsledek do stránky doplní. Teprve poté je výstup odeslán uživateli jako hotová stránka. Tato idea byla rozvinuta tak, že k libovolnému XML elementu lze připojit programový kód, tzv. frag (fragment). Dispečer pak zajišťuje vykonávání těchto fragů - jako parametry slouží atributy a vnitřní elementy - a dosazení jejich výstupů (tj. fragmentů XML) na místa volání.

Jako příklad si můžeme nadefinovat element pozdrav s atributem jazyk. K němu dodáme programový kód, který nás pozdraví v příslušném jazyce. Takže např. text <pozdrav jazyk="cs"/> bude nahrazen textem ahoj a <pozdrav jazyk="en"/> textem hello. Nebo jiný příklad: k <a href="?">cokoliv</a> je možné definovat, že má být nahrazen značkou <a href="?" style="?">cokoliv</a> - v podstatě tedy jde o doplnění hodnoty atributu style. Na www.muni.cz je tato možnost využita například pro doplnění ikonky typu odkazu: je-li zřejmé, že obsah atributu href určuje jiný web, je použit styl pro tzv. externí odkaz a doplněna ikona externího okna; jedná-li se o odkaz na zabezpečené stránky (https://?), je opět použit odpovídající styl a doplněna příslušná ikona.

3  Oddělené zdroje

Důležitou vlastností implementace nového webu jsou oddělené zdroje (tzv. resources). Web MU je "odjakživa" budován jako dvojjazyčný a velkým neduhem všech předchozích verzí bylo, že texty a jejich překlady byly vepisovány přímo do programového kódu. Podobně byly do programového kódu vkládány např. externí odkazy, jejichž existenci pak nebylo možné systematicky kontrolovat. Nový web již řeší tuto problematiku odděleně a veškeré texty (od krátkých řádkových frází po celostránková pojednání) eviduje v databázi. Nad těmito oddělenými zdroji pak lze (a již se tak i děje) budovat aplikace pro jejich správu (jazykové kontroly, překlady, průběžnou aktualizaci obsahu) - aniž by byla nutná asistence programátora.

Oddělením zdrojů vznikly číselníky frází, externích odkazů a tzv. dlouhých textů. Samotný výpis textu z číselníku je opět realizován pomocí fragu - např. <dict id="87"/> doplní text "Publikační činnost" případně anglický překlad, pokud je stránka požadována v angličtině. Obdobně frag <extern_link id="280"/> doplní odkaz na statut lékařské fakulty a frag <text_ref id="41"/> doplní text pro stránku projektu Antarktida.

Zmíněné číselníky umožňují rovněž kategorizovat (seskupovat) jednotlivé položky. Pokud je tedy použit frag <extern_link type="statut"/>, je dosazen externí odkaz na statut té součásti univerzity, která je aktuálně zobrazována. Ke každé kategorii položek je nutno přiřadit parametry, pro něž má smysl. Při požadavku na výpis se pak z kategorie vybere ta položka, která nejlépe vyhovuje parametrům (zde je to podmínka, že požadovanou součástí univerzity je lékařská fakulta).

4  URL

Změna struktury webu je také příhodným okamžikem k zamyšlení se nad strukturou a formátem adres stránek (URL) a k případným změnám ve prospěch přehlednosti. Adresy stránek předchozí verze webu měly většinou příponu asp a byly úzce spjaty s programovým kódem (v adrese stránky byl zpravidla obsažen přímo název programu či skriptu generujícího obsah stránky). V nové prezentaci má každá stránka specifikovánu svou adresu URL, která je takzvaně "hezká" (a dle potřeby ji lze kdykoli dále zkrášlit) a na názvu programu generujícího vlastní obsah stránky zcela nezávislá. Např. stránka životopisu osoby má formát adresy http://www.muni.cz/people/person/cv, kde $person$ je identifikace (UČO) osoby (formát adresy kterékoli stránky lze získat kliknutím na symbol [i] v toolbaru umístěném v pravém horním rohu). Požadavek na tuto a libovolnou jinou stránku www.muni.cz je vždy přijat dispečerem, zmíněným již v úvodu, který na základě analýzy požadované adresy (URL) určí, jakým konkrétním programovým kódem bude obsah stránky vygenerován.

Došlo také ke změně URL hlavních stránek součástí MU. Motivací bylo sladění zkratek použitých u serverů součástí univerzity s jejich vlastními zkratkami použitými ve www.soucast.muni.cz. Zkratky fakult použité v adrese http://www.muni.cz/soucast jsou tedy law - právnická, med - lékařská, sci - přírodovědecká, phil - filozofická, ped - pedagogická, econ - ekonomicko-správní, fi - informatiky, fss - sociálních studií, fsps - sportovních studií.

5  Návaznosti na univerzitní systémy

Vlastní prezentace přebírá datové podklady pro publikování z různých informačních systémů univerzity - viz [2]. Jak již bylo zmíněno v předchozím díle, prezentace je obohacena o fotogalerie. Pro jejich plnění se používají obrázky a data z Digitální knihovny fotografií MU (DKF MU), odkud jsou potřebné údaje přenášeny automatizovaně v XML formátu. Nový web je obohacen také o videoukázky (viz http://www.muni.cz/general/events/video), pro něž je využit streamovací server Laboratoře pokročilých síťových technologií FI.

V Inetu vzniknou pro snazší správu www.muni.cz podpůrné aplikace (např. zadávání bannerů), určené pro Odbor vnějších vztahů a marketingu RMU.

6  Hardware

V několika prvních týdnech po svém spuštění běžel nový web na stejném hardware jako web předchozí, tedy na dvou jednoprocesorových webových serverech (512 MB RAM, Intel Pentium 4 1,8GHz - podrobnosti viz [1]). V polovině října byla webová prezentace přesunuta na dva nové webové servery HP ProLiant DL360 (1 GB RAM, 2 x Intel Pentium 4 Xeon 3,6GHz), které mají za úkol unést významně vyšší zátěž než servery předchozí - jednak v důsledku zvyšující se návštěvnosti, a také vyšší výpočetní náročnosti nového webu vyplývající z vícevrstvého aplikačního řešení použitého pro generování obsahu stránek a složité prezentační grafiky. Náhrada databázového serveru Dell 2650 (2 GB RAM, 2x Intel Pentium 4 Xeon 2,8GHz), pořízeného v roce 2003, je plánována na příští rok. V současné době je průměrná odezva www.muni.cz na uživatelský požadavek nižší než 1 sekunda.

Literatura

[1] J. Ocelka. Cluster www-serverů MU. Zpravodaj ÚVT MU. ISSN 1212-0901, 2003, roč. 13,č. 5,s. 5-8.
... zpět do textu
[2] Š. Ocelková. Webová prezentace MU po 4 letech. Zpravodaj ÚVT MU. ISSN 1212-0901, 2002, roč. XIII, č. 1, s. 4-8
... zpět do textu
setting
1 Připomeňme, že grafické řešení prezentace je dílem ateliéru ExactDesign a obsahovou náplň webové prezentace určuje rektorát MU.
... zpět do textu
Zpět na začátek
ÚVT MU, poslední změna 14.11.2011