You are on page 1of 37

NSWI090

Potaov st I

NSWI090: Potaov st I (verze 4.0)

verze 4.0, lekce 10, slide 1

Lekce 10: Vvoj


vpoetnho modelu
Ji Peterka

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 2

co je vpoetn model?

ucelen pedstava o tom,


kde jsou aplikace uchovvny
jako programy (spustiteln soubory)

kde se nachz / kde vznikaj data


jako (datov) soubory, streamy,

zda jsou aplikace rozdleny na sti


(a jak)
kde se tyto sti nachz, jak vzjemn
spolupracuj

kde se zpracovvaj a uchovvaj data


nemus to bt tam, kde data vznikaj i
kam jsou ukldna

kde se nachz a co dl uivatel


zda je/me bt v interaktivnm
kontaktu se svou aplikac
zda s aplikac pracuje na dlku
.

sprvn pochopen vpoetnch model


je dleit i pro zvldnut problematiky
st, pochopen jejich podstaty

vpoetn model je zvisl

na monostech HW a SW
na (ne)dostupnosti st a propojen
na preferencch uivatel i vrobc
na snahch minimalizovat nklady
na potebch bezpenosti
..

vpoetn model se stle vyvj


nkter vpoetn modely nepotaj
s existenc st
nap. dvkov zpracovn

jin vpoetn modely spe potaj


s existenc st
nap. model klient/server

dal modely ji vyaduj existenci st


nap. distribuovan zpracovn,
network-centric computing, thin-client,
server-centric computing, utility
computing, cloud computing

NSWI090
Potaov st I

dvkov zpracovn

verze 4.0, lekce 10, slide 3

nejstar vpoetn model


HW byl drah a pomal, zjemc o vyuit bylo hodn
ve muselo bt njak sdleno

ale nebylo mon, aby:


uivatel pracovali s potaem souasn
nebyl na to jet vhodn SW, kter by umonil njak sdlen, ani HW nebyl dost vkonn
uivatel mli pm (interaktivn) kontakt se svou aplikac
nebyly jet k dispozici terminly (pracovit, s klvesnic a tiskrnou/displejem)

podstata dvkovho zpracovn (batch processing)


uivatel musel dopedu ci, co vechno chce
musel pipravit programy, data i pokyny pro jejich zpracovn, a zabalit je do jednoho celku
tzv. dvky, anglicky: batch, job

dvka je sestavena (zabalena) pomoc jazyka JCL (Job Control Language)


nejastji: ve form drnch ttk i drn psky

dvky od rznch uivatel se adily do front


s rznmi reimy i strategiemi

s clem max. vytit dostupn zdroje

program

dvka byla zpracovna tehdy, kdy na ni dola ada

ani by uivatel/autor dvky byl pitom

data

dvka

fronta
dvka
dvka
dvka
dvka
dvka
dvka
dvka
dvka
dvka
dvka

vstupem byla tiskov sestava, sestava na drnch ttcch, drn psce apod.

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 4

RJE a model autonomnch agent

vhoda dvkovho zpracovn:


doke velmi efektivn vyut to, co je k dispozici . (hlavn HW)
proto dodnes nen tento model pln mrtv, ale nkde se nadle pouv
nap. u superpota, pro vpoetn nron lohy

novj podoba dvkovho zpracovn:


RJE (Remote Job Entry)
dvka se piprav na jednom potai (teba na
bnm PC)
a po sti se pole ke zpracovn na jin pota
(nap. superpota)
variantou je distribuovan aplikan platforma

k dispozici je cel pool server, kter si sm ur,


na kterm serveru bude loha zpracovna

modern obdoba
model autonomnch agent
autonomn agent je obdoba dvky
jde o celek (dvku) s uritm zadnm, kter se
pi jeho plnn chov autonomn

obvykle: cestuje po sti a pln zadan kol,


napklad vyhledvn informac, zdroj apod.

A
A

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 5

model host/terminl

dvkov zpracovn neumoovalo pm kontakt s aplikacemi


proto, e neexistovaly terminly (uivatelsk pracovit)
tak proto, e HW byl mlo vkonn, neexistoval SW umoujc souasn bh vce loh

zmna nastala a kdy:


byly dostupn terminly
byl vkonnj HW
SW umooval sdlen asu

CPU
aplikace

souasn bh vce loh (patcch rznm uivatelm)


fakticky jde o jejich rychl stdn, vytvejc iluzi souasnho bhu

nov model: host/terminl


host (hostitelsk pota)

OS

mstn
terminl

je hostitelem zdroj: dat a aplikac, pamti a CPU, periferi atd.


na host-u b aplikace v reimu sdlen asu (time sharing)
sv vstupy poslaj na terminl, z terminlu zskvaj sv vstupy

terminl
je jednoduch vstupn/vstupn zazen
napklad kombinace klvesnice a tiskrny, nebo
kombinace klvesnice a obrazovkovho displeje
obvykle je vce terminl propojeno do terminlov st

host

terminlov
s

vzdlen terminly

data

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 6

model host/terminl
vhoda:
mezi hostitelskm
potaem
a terminlem se
pen pouze kdy
jednotlivch znak
tj. mal objemy dat

nevhoda:
uivatelsk prosted je
pouze semigrafick !!!
tvoen pouze alfanumerickmi znaky

nejde o (pln) grafick GUI


tak jak jej znme dnes

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 7

vlastnosti modelu host/terminl

ve je na jedn hromad
vechny aplikace (lohy) b na hostitelskm potai
systmov lohy, i lohy vech uivatel

data se zpracovvaj v mst kde se nachz


nedochz k penosm velkch objem dat

mezi hostitelskm potaem a terminly se


pen pouze:
vstupy na obrazovku uivatele
nikoli rastrov (bit-mapov) data grafickho reimu,
ale jen kdy alfanumerickch znak

vstupy z uivatelovy klvesnice


jen kdy znak, jet dn my, trackball apod.

terminly mohou bt umstny v rzn


vzdlenosti

blzko (mstn, lokln terminly)


daleko (vzdlen terminly)
...... (kdekoli v sti)
mohou bt skuten i emulovan

vhody:
sprva je jednodu
ve sta provst jen 1x,
s dopadem na vechny
uivatele

objem dat, penen


mezi hostem a terminly,
je mal
nroky na penosovou s
jsou mal
mohlo to fungovat
i v dob, kdy st mly
jet nzk kapacity
terminly mohou bt
umstn i ve velk
vzdlenosti

terminl nemus bt
skuten (jednoelov)
me bt emulovan
je to aplikace, bc na
bnm potai

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 8

vlastnosti modelu host/terminl

nevhody:

monosti vyuit:

pouze semigrafick prosted


ve sv dob uivatelm tolik nevadilo
nebyli jet tak namlsan dnenmi
GUI

dn polohovac zazen
jako je my i trackball
pouze posun o znakovou pozici
pomoc kurzorovch tlatek na
klvesnici

uivatel se ct omezen tm, e


dostupn zdroje sdl s ostatnmi
uivateli
i kdy je jim pedkldna iluze, e maj
pota jen pro sebe
dky sdlen asu a rychlmu stdn
loh na procesoru
s

v modelu host/terminl me bt
provozovna jakkoli aplikace
jej vstupy (i vstupy) lze pesmrovat na (z)
konkrtn terminl
nesm zapisovat pmo do videoRAM)

aplikace si neuvdomuje, e funguje v


prosted st
a ani si to uvdomovat nemus
pesto me bt vyuvna v prosted st

prostednictvm vzdlench terminlovch


relac

dodnes se vyuv napklad pro


vzdlenou sprvu rznch zazen

NSWI090
Potaov st I

model desktop PC

verze 4.0, lekce 10, slide 9

vvoj v oblasti HW:


potae se stle zmenovaly, zlevovaly, rostl jejich vkon
velk slov (stediskov) potae (angl: mainframe) nahradily minipotae
ale vpoetn model zstval stle stejn: host/terminl

ve bylo centralizovan (na jedn hromad) na hostitelskm potai


zatmco terminly nemly dnou vlastn vpoetn kapacitu byla to jen
pasivn V/V zazen

stle se nevyplatilo (bylo pli drah) dt kadmu jeho vlastn pota


pestoe to uivatel chtlo

teprve s postupem asu (80. lta 20. stolet) se cena pota snila
natolik, e bylo mon dt kadmu pota k jeho vhradnmu pouit
jako osobn pota (Personal Computer, PC), na jeho stl (desktop)

dochz ke zmn vpoetnho modelu


aplikace i data se sthuj
z centra (z hostitelskho potae)
pmo k uivateli (na jeho osobn pota)

aplikace b (a zpracovvaj sv data)

takovm
takovm aplikacm
aplikacm se
se dodnes k
dodnes k
desktop aplikace
desktop aplikace

na uivatelov osobnm potai


aplikace si mohou myslet, e maj cel pota jen pro sebe
mohou pistupovat pmo k pamti, ke vem periferim,
mohou nap. zapisovat pmo do VideoRAM

aplikace

data

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 10

model desktop PC

pechod od modelu host/terminl k modelu desktop byl zsadn zmnou


skokem ode zdi ke zdi (od jednoho extrmu k jinmu)

od pln centralizace
kdy jsou vechny zdroje na jedn hromad
centralizovan na hostitelskm potai

k pln decentralizaci
kdy jsou vechny zdroje distribuovny
nachz se pmo u svch vlastnk/uivatel

centralizace

decentralizace

ada problm se tm vyeila


uivatel nemaj (negativn) dojem, e se mus s nkm o nco dlit
je mon vy komfort na uivatelskm pracoviti

1x

desktop aplikace ji mohou mt pln grafick GUI, ovldn my atd.

ale vznikla ada zcela novch problm


sprva (desktop) aplikac a dalch zdroj
dve stail 1x zsah v centru (na hostitel. potai),
nyn nutno eit Nx (na kadm PC znovu)

Nx

replikace a sdlen zdroj


jak to udlat, kdy uivatel chtj pracovat se stejnmi daty? A kad je chce njak mnit?

nkter periferie jsou stle pli drah na to, aby je kad mohl mt jen pro sebe

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 11

hledn zlat stedn cesty

pechod ode zdi ke zdi (od pln centralizace k pln decentralizaci)


nebyl ideln
spe pidlal vce novch problm, ne kolik vyeil tch starch
byl to pechod z jednoho extrmu do jinho extrmu

lid pochopili, e nejlep je zlat stedn cesta


nco se vyplat dt kadmu do vlunho pouit, nco se vyplat nadle sdlet

co se vyplat dt kadmu?
vlastn vpoetn kapacitu
u je relativn lacin

vlastn pracovn msto


klvesnici, monitor, my, .....
uivateli lze vytvoit pjemn
pracovn prosted

nkter programy a data


kter to jsou, nutno posuzovat
individuln

co se vyplat nadle sdlet?


drah periferie
nap. laserov tiskrny, modemy, .........

spolen data
firemn databze, sdlen dokumenty, .....

aplikace
vyadujc sprvn nakonfigurovn a drbu
..
nkdy se vyplat centralizovat (uchovvat centrln)
teba i soukrom data, kvli jejich zlohovn .

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 12

poteba sdlen motivace pro LAN

pro monost sdlen je nutn propojit jednotliv osobn potae do st


vznik poteba loklnch st (st LAN Local Area Network)

poadavky na LAN:
mus bt dostaten rychl
aby se uivatel dostali ke sdlenm zdrojm
dostaten rychle
aby nepoznali, e zdroj je umstn nkde
v sti

a nikoli u nich (pmo na jejich PC)

sdlen zdroj v st mus bt neviditeln


pro aplikace i uivatele
aby uivatel mli iluzi, e maj zdroj jen
pro sebe

aby nevnmali jeho sdlen


aby nemuseli dlat nic jinho, ne co by dlali
pi pstupu ke skuten mstnm zdrojm

aby aplikace nemusely vdt, e pracuj


v prosted st, a pesto mohly pistupovat
ke sdlenm zdrojm

aby se daly vyuvat desktop aplikace,


pvodn vyvinut pro (desktop) PC, bez
pipojen do st

k dispozici ji je Ethernet
jeho 10 Mbit/s postauje
v prosted LAN, s krtkou RTT

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 13

model file server/pracovn stanice


file server

podstata modelu:
jeden uzel funguje jako file server (souborov server)
poskytuje slubu, spovajc v ukldn (celch) soubor
jsou na nm umstny soubory, obsahujc aplikace i data uivatel

ostatn uzly funguj jako pracovn stanice


uivatel na nich pracuj:
spout na nich sv aplikace
zpracovvaj na nich sv data

s LAN

zpsob fungovn:
adrese na file serveru jsou namapovny na jednotliv pracovn stanice
a chovaj se jako mstn adrese
soubory, uloen na file serveru, se jev jako mstn soubory

jejich sdlen nen viditeln ani pro uivatele, ani pro aplikace

sputn aplikace je stejn, jako sputn mstn aplikace

jako soubor
jsou data
umstna
zde

jako soubor je aplikace


umstna zde
zde aplikace b, zde
zpracovv data

aplikace m formu souboru, kter je umstn na file serveru


ale jev se jako mstn
pi sputn aplikace je obsah souboru s aplikac penesen na pracovn stanici a zde sputn
penos zajiuj mechanismy mapovn

prce s daty je stejn, jako s mstnmi daty

data jsou v souboru na file serveru, jejich penos tam/zpt zajiuj mechanismy mapovn

NSWI090
Potaov st I

model file server/pracovn stanice

verze 4.0, lekce 10, slide 14

vhody:
umouje sdlet aplikace i data
skrze jejich centrln umstn ve form soubor

aplikace nemus tuit o existenci st

1 GB
penos

v tomto modelu lze provozovat i desktop aplikace

nevhody:
problmy s konfigurac (jedn) aplikace pro vce uivatel
problmy s pstupem vce uivatel ke stejnm datm

s LAN

zpracovn

napklad pokud chtj mnit spolen dokument

data (asto velk) mohou bt penena po LAN zbyten


penena mezi file serverem, kde se nachz, a
ANO/NE
pracovn stanic, kde jsou zpracovvna
extrmn pklad: v databzi o velikosti 1 GB m bt nalezen vskyt njakho etzce

tato databze je umstna (jako soubor) na file serveru


pro zpracovn je 1 GB soubor penesen na pracovn stanici
vlastn prohledvn probh na pracovn stanici
vsledkem je 1-bitov informace: ANO/NE
ale k jejmu zskn se musel penst 1 GB !!

eenm je data nepenet, ale zpracovvat je pmo tam, kde se nachz


a penet pouze vsledek zpracovn

1 GB

s LAN
ANO/NE

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 15

model klient/server

zkladn princip:
data se zpracovvaj tam, kde se (data) nachz

aplikace

obdobn pro jin innosti, ne je zpracovn dat

s uivatelem se komunikuje tam, kde se (uivatel) nachz

1 GB

dsledek:
pvodn jednolit (monolitick) aplikace se mus rozdlit na 2 sti:
server (serverovou st): b tam, kde jsou data
klient (klientskou st): b tam, kde je uivatel

rozhran (ez) mezi obma stmi by ml bt voleno tak, aby jejich vzjemn
komunikace byla co nejmen
co do objemu penench dat (ne nutn etnosti komunikace)
aby zt penosov st byla co nejmen !!!

aplikace si ji mus uvdomovat existenci st

princip fungovn modelu klient/server:

klient

poadavek
odpov

komunikace mezi obma stmi aplikace je charakteru poadavek-odpov


server je pasivn a ek, a dostane od klienta njak poadavek
a ten vyd vygeneruje odpov

klient je aktivn: na zklad aktivit uivatele generuje poadavky vi serveru


a zprostedkovv poskytnut odpovdi uivateli (prezentaci vsledk)

server

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 16

model klient/server

v modelu klient/server dnes funguje vtina slueb v Internetu, nap.


World Wide Web, elektronick pota, penos soubor,

fungovn modelu vyaduje , aby existovala a dodrovala se konvence o:


zpsobu vzjemn komunikace mezi
klientem a serverem
WWW: protokol HTTP
HyperText Transfer Protocol
el. pota: protokol SMTP
Simple Mail Transfer Protocol
penos soubor: protokol FTP
File Transfer Protocol
penos soubor: protokol SMB
Server Message Block
dal: DNS, DHCP, IRC, SIP, SNMP, NTP,

formtu a vznamu toho, co se mezi


serverem a klientem pen
WWW: jazyk HTML
HyperText Markup Language
el. pota: formt zprv
standard RFC 822 ..
penos soubor: formt soubor
vlastn konvence
.
poadavek

klient

(ne)vhody modelu klient/server:

kad aplikace m svho klienta

server

HTTP request

vechny zdroje jsou centralizovan


jsou umstny na serveru

odpov

HTML code

web server
je nutn ho udrovat (zajiovat jeho sprvu), uit uivatele pouvat klienta i celou slubu

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 17

alternativa: model peer-to-peer

model klient/server je centralizovan


pedpokld a oekv, e vechny zdroje (data, periferie, .)
se pesunou na centrln server
je to asymetrick een
zavd nerovnost mezi uzly
nkter je (pouze) server, jin je (pouze) klient

s
LAN

je mon alternativa: model peer-to-peer

1 GB

zdroje zstanou tam, kde jsou


kde vznikaj, u svho vlastnka, .
na konkrtnch uzlech v (lokln) sti

1 GB

kad uzel se chov souasn:


jako server
zpstupuje ostatnm ty zdroje, kter m u sebe
jako klient
d o zdroj toho, kdo zdroj m (server)

je to symetrick een
vechny uzly si jsou (mohou bt) rovny
v anglitin jsou sob rovn uzly oznaovny jako peers
proto je tento model oznaovn jako peer-to-peer (zkratkou P2P)
podpora peer-to-peer st je dnes (nativn) dostupn ve vtin OS (Win, Linux, )

s
LAN

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 18

3-rovov model klient/server

pipomenut:
nevhodou modelu klient/server je specifinost klienta (klientsk sti aplikace)
kad sluba m svho vlastnho klienta = sloit a drah (na sprvu, drbu, .)

een:
rozdlit pvodn jednotlivou aplikaci nikoli na 2 sti (klient/server), ale na 3 sti
prezentan st
kter me bt univerzln = stejn (spolen) pro rzn sluby

v praxi obvykle: webov prohle (browser)

aplikan st
ve kter je soustedno ve, co je pro danou aplikaci (slubu) specifick

je zde implementovna tzv. aplikan logika

databzovou st
ve kter jsou uchovvna data

me bt zcela standardn = jakkoli databze

aplikan
logika

vhody:

DB

ni nklady na sprvu a drbu na stran uivatel, jednodu pouvn, ..


kdy je klientsk st spolen pro vce slueb

sluba 1

ni nklady na implementaci a provoz


je pouita zcela standardn databze

jednotliv sti mohou bt libovoln daleko od sebe

sluba 2

sluba 3
sluba 4

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 19

desktop vs. network-centric computing

jde o dva rozdln pohledy na celkovou architekturu pota, vpoetn


modely i roli st
desktop computing
ve je na desktopu (na uivatelskm
potai)
aplikace jsou pipraveny (nainstalovny)
a provozovny na desktopu

nebo alespo namapovny jako mstn

s slou pouze k penosm a komunikaci


ale nen zdrojem veho
dsledek:
monosti na rznch potach
(desktopech) jsou rzn

ve je v sti
aplikace, data i dal zdroje se nachz
v sti

nebo alespo jejich klientsk sti

dal zdroje (data, periferie) jsou tak na


desktopu

network-centric computing

co jde dlat na jednom potai, nemus


jt dlat na ostatnch .
nemus zde bt dostupn stejn aplikace
nemus zde bt dostupn stejn data

pat sem i model klient/server

ale stahuj se na uivatelsk pota,


nebo pouvaj na dlku

s je primrn a hlavn
uivatelsk potae jsou spe jen
koncov zazen

nemus jt o klasick PC, mohou to bt


i zazen jinch typ
dnes nap. tablety, mobily,

dsledek (efekt):
monosti na rznch potach
mohou bt stejn

co jde dlat na jednom koncovm


zazen, jde dlat i na ostatnch ..

clem je:
snit nklady na sprvu a drbu

TCO, Total Cost of Ownership

NSWI090
Potaov st I

network-centric computing

verze 4.0, lekce 10, slide 20

jde o obecn koncept


me bt naplnn (realizovn) rznmi zpsoby, s vyuitm rznch vpoetnch model
aplikace jsou umstny zde

aplikace jsou
provozovny zde
cel, nebo
z sti

pouv se na dlku
aplikace jsou
provozovny zde

staen aplikace

aplikace (spustiteln kd) jsou umstny


v sti, ale jsou stahovny do koncovho
zazen, a spoutny a provozovny v nm
takto funguje napklad:
tenk klient (t: NC, Network Computer)
webov aplikace
tzv. bohat internetov aplikace

RIA, Rich Internet Applications

tzv. streaming aplikac


po pouit je spustiteln kd jednodue zahozen
a pt staen znovu
stahuje se

aplikace jsou
umstny zde

penos
vstup/vstup

aplikace jsou umstny,


spoutny a provozovny v sti,
do koncovho zazen se
pen pouze jejich vstupy
takto funguj napklad:
aplikan servery

vpoetn model server-based


computing

NSWI090
Potaov st I

tenk a tlust klient, PC vs. NC

verze 4.0, lekce 10, slide 21

klasick osobn pota (PC):

tzv. tenk klient

je dimenzovn tak, aby byl pedem


je dimenzovn minimalisticky
pipraven na mon poadavky uivatele
nejsou na nm nainstalovny dn
jsou na nm dopedu instalovny aplikace
(cel nebo jejich klientsk sti), pro
ppad e by je uivatel poteboval
podle toho je dimenzovn vkon CPU,
velikost RAM a HD, periferie . i OS

vhoda
kdy uivatel nco skuten chce, doshne
toho rychle
rovnou si spust tu (pipravenou)
aplikaci, kter spln jeho poadavek

napklad na editaci textu, prci s el.


potou, brouzdn webem, ..

nevhoda
pota mus bt hodn vkonn (=dra)
pota mus bt dopedu zabydlen
ve nainstalovan, nakonfigurovan
nklady na sprvu a drbu jsou vysok
t: tzv. tlust klient (PC)

aplikace
aplikace (kd) se stahuj (ze st) a
v okamiku jejich skuten poteby

na zklad poadavku uivatele

po pouit se staen kd zahod


pota m jen jednoduch OS
schopn pijmout poadavek uivatele
a sthnout ve potebn

vhoda
ni nroky na HW
a zcela jin nroky na SW
velmi jednoduch (levn) sprva
blbovzdorn zazen

nevhoda
vechny aplikace je nutn napsat znovu
staen aplikac me trvat (pli) dlouho
t: tzv. NC (Network Computer)

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 22

osud tenkch klient

pvodn pedstava (motivace), cca 1995-1997:


pjde o nhradu klasickch PC (tlustch klient)
spe o vytlaen dua Microsoft+Intel (konkurence: Oracle+Netscape+Sun+IBM)

aplikace, stahovan ze st, budou psny v Jav, jako applety


a koncov zazen (tenk klient) bude fungovat jako Java Virtual Machine

problmy:
bylo nutn pepsat vechny aplikace do podoby Java applet
nap. firma Corel vytvoila v Jav cel kancelsk balk (Corel Office for Java)

narozena: 1995

ukzalo se, e stahovn applet ze st (i dostaten rychl) je pli pomal na to,


aby na to uivatel vydrel ekat
kdy nap. ekne, e chce pst text, stahuje se cel textov editor v podob appletu
a ne se sthne, zavede do pamti a spust, trv to z pohledu uivatele nenosn dlouho

dsledek
tenk klient (NC) se v praxi moc neujal
jeho nevhody pevily nad vhodami
ml bt levnj, ale i klasick PC (tlust klient) zlevnila a snila sv TCO
tvorba aplikac pro tenk klienty (NC) byla problematick

dnes se NC vyuv jen pro specifick ely


pro jednoelov vyuit (nap. na bankov pepce), kde se neprovozuj jin aplikace

NSWI090
Potaov st I

webov aplikace

verze 4.0, lekce 10, slide 23

jde o hodn irok pojem, s mnoha rznmi vklady


star (historick) pojet:

modernj pojet:

cel aplikace b v sti


uivatel pracuje s bnm webovm
browserem, kter mu zobrazuje statick
webov strnky
statick strnky generuje webov server,
bc v sti

za nm je schovna samotn aplikace


aplikan logika (a ev. i databze)

nco (njak kd) se stahuje a b uvnit


browseru, se kterm pracuje uivatel
typicky: v browseru b st aplikace

rzn velk st, ppadn i cel aplikace


napklad: st aplikace, zajiuj
zobrazovac logiku (GUI logic)

zbytek aplikace b v sti (na serveru)

aplikan logika, data, .

browser se chov jako univerzln


(softwarov) tenk klient
a odeslaj na server
vkonn kd se do nj stahuje, pouije a
metodami GET i POST
pak zahod (smae)
podobn 3-rovovmu modelu klient/server
monosti (formy kdu v browseru):
JavaScript, Java, DHTML,
zasazenmu do prosted webu a Internetu
vstupy od uivatele se zadvaj jako data
do formul (v rmci webovch strnek)

aktivn kd uvnit
webovch strnek

pouze statick webov


strnky, dn aktivn kd
cel
aplikace
webov server

st
aplikace

st
aplikace
webov server

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 24

pklad: jzdn dy

vyhledvn dopravnho spojen


webov aplikace (spe) ve starm pojet
dotazy se zadvaj do polek formul a odeslaj
na server (stisknutm tlatka)
vlastn funknost na stran klienta: naeptva

realizovno pomoc Javascriptu

odpov generuje server v sti


aplikace vyhled spojen
webov server pevede
nalezen spojen do podoby
HTML strnky a ped klientovi
(browseru) k zobrazen

cel
aplikace
webov server

NSWI090
Potaov st I

dal vvoj webovch aplikac

verze 4.0, lekce 10, slide 25

vvoj u uivatele
pvodn:

HTML+kd

kd, kter se stahuje ze st, b v browseru nativn


bez nutnosti njakch doplk (plug-in) nap. JavaScript, DHTML

resp. podpora tohoto typu kdu je v browseru zabudovna ji od jeho vrobce

nov:
kd, kter se stahuje ze st, vyaduje ke svmu bhu v browseru
dodatenou podporu
1.
je nutn instalovat do browseru odpovdajc doplnk (ve form plug-inu)

plat nap. pro Javu (vyaduje JVM), Flash/Flex, Adobe Air, Silverlight,
nejastji je plug-in od njak 3. strany (ne od vrobce browseru)

jde vlastn o novou a samostatnou platformu, na kter b kd, kter


se stahuje ze st

plug-in

tato platforma me bt vytvoena uvnit browseru


tzv. in-browser: kd b uvnit browseru
nebo me bt vytvoena samostatn, nezvisle na browseru
tzv. out-of-browser: kd b mimo browser, v rmci samostatn aplikace,
kter vytv potebn prosted/platformu (canvas, sandbox, .)

nejnovji (opt):

2.

nebo:

kd, kter se stahuje ze st, b v browseru nativn


dky otevenm standardm, jako je HTML5
out-of-browser

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 26

pklad: datov schrnky

datov zprvy, penen skrze datov schrnky (ISDS) maj formt ZFO
jde o proprietrn formt, kter dn browser nativn (sm od sebe) nepodporuje

pvodn een:
server ISDS (Informanho systmu datovch schrnek) nechval zobrazen obsahu
datov zprvy (ve formtu ZFO) na klientovi (na browseru)
co vyadovalo instalovat podporu formtu ZFO
doplnk 602 XML Filler od Software602

dnen een (od 30.7.2012):


formt ZFO ji rozbaluje server
klientovi pedv jeho obsah ji peveden
do HTM

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 27

pklad: NEN

NEN: nrodn elektronick nstroj


platforma pro veejn zakzky

v browseru b cel aplikace NEN


je napsna v Silverlight-u
technologii od spolenosti Microsoft

vyaduje instalaci plug-inu


s podporou technologie Silverlight

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 28

dal vvoj webovch aplikac

tk se dn mezi uivatelem a st/serverem


jde o pechod ze synchronn komunikace na asynchronn komunikaci

synchronn webov aplikace


komunikace mezi browserem a
st/serverem probh na zklad
pmch podnt uivatele

asynchronn webov aplikace


komunikace mezi browserem
a st/serverem me probhat
na pozad

synchronn s aktivitami uivatele


tj. nedl se nic dopedu, nezvisle
na uivateli a jeho aktivitch
komunikace je vdy pln, napklad:
pokud komunikace probh na rovni
natn webovch strnek:

dojde k naten cel nov strnky


nikoli jen njak dl sti
a kdy uivatel na nco klikne

asynchronn s aktivitami uivatele


browser me natat nov data
dopedu, nezvisle na uivateli
a beze zmny zobrazen
komunikace me bt sten
browser si me vydat teba jen
dl st dat, kterou potebuje

jsou nutn nov druhy prostedk

vyuvaj se standardn prostedky


HTTP, HTML, CSS, .

GUI

kdy pedvd aktivity uivatele

APP

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 29

pklad: AJAX a Google maps

Google Maps je asynchronn webov aplikace


vyuv technologii AJAX

Asynchronous Javascript and XML


zahrnuje:

pomoc kter si stahuje jen ta (sten) data, kter


potebuje
nov prostedek pro
nemus se natat cel nov webov strnka
vznen dlch poadavk
pomoc kter si data stahuje tehdy, kdy sm uzn za vhodn
objekt XMLHttpRequest
vhodn formty dat pro
nemus ekat na aktivity/poadavky uivatele
(dl) penos

XML, JSON .

dle:
monost zasahovat do
dlch st HTML strnek

DOM (Document Object


Model), .

monost ve vhodn
provzat

Javascript, .

Javascript,
DOM,

GUI
APP
XMLHttpRequest
XML, JSON

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 30

bohat internetov aplikace

RIA: Rich Internet Applications

obvykl een:

jde o lep variantu webovch aplikac

klientsk st zajiuje vtinu


nkdy povaovanou za samostatnou kategorii
innost, spojench s fungovnm
aplikace
klientsk st (kd, kter se stahuje ze st) se
serverov st uchovv data
svmi schopnostmi i uivatelskm komfortem
a stavov informace
vyrovn samostatn (desktop) aplikaci
nebo ji dokonce ped
zjednoduen: uivatel nevnm rozdl mezi
desktop aplikac a RIA aplikac

pklady
Google Docs
klientsk st zajiuje vlastn prci
s dokumenty
napklad vechny funkce editoru
realizuje klientsk st
serverov st uchovv jednotliv
dokumenty uivatele
plus veker nastaven

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 31

vhody webovch/RIA aplikac

maj vhody (i nevhody), plynouc z modelu network-centric computing


vhody
obecn: b vude a stejn
na vech potach a podobnch zazench
nejastji v rmci browseru (in-browser),
ppadn samostatn (out-of-browser)

nemus se instalovat ani aktualizovat


na uivatelskch zazench
protoe se stahuj ze st

maj ni nklady na sprvu a drbu


sta ve eit centrln (v sti / na serveru)

pipomenut:

nevhody
mohou vyadovat specifick
prosted a podporu pro svj bh
nap. Flash, Java, Adobe Air, Silverlight,
..
tam, kde toto prosted nen
k dispozici, je nelze provozovat
instalovat a aktualizovat se mus
pouze prosted pro bh aplikace
plug-in v browseru, samostatn
prosted (virtual machine, canvas,
sandbox, .)

jde o jednu z monost, jak realizovat vpoetn model network-centric computing


takov, kdy st funknosti aplikace (nebo i cel) je vykonvna na potai uivatele

jde o uritou renesanci (vylepenou verzi) tenkho klienta


kdy se do koncovho zazen me stahovat cel aplikace, nebo jen jej st
zbytek aplikace je v sti (na vhodnm serveru)
kdy roli NC obvykle hraje webov browser (varianta in-browser)
ale me to bt i njak samostatn program, vytvejc vhodn prosted

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 32

tzv. streaming aplikac

stejn mylenka jako u NC/tenkho klienta:

sthnout aplikaci (a spustit ji) a na zklad poteby (dosti) uivatele


stahuje se ze st, z vhodnho serveru, kde mus bt dopedu pipravena , ve sprvn podob

realizace:
je inteligentnj ne u NC
pedpokld, e uivatel nepotebuje plnou funknost aplikace
ale v kadm okamiku vyuv vdy jen njakou jej st

stahovn je progresivn: aplikace se stahuje po stech


nejprve se sthne tak mal st, aby se dalo zat
aby se uivateli nco spustilo a on ml s m komunikovat
aby odezva byla co nejrychlej, aby uivatel dlouho neekal
dal sti se stahuj na pozad, bhem prce uivatele, buto:
proaktivn, v oekvn, e pslun st bude zapoteb
reaktivn, jako reakce na konkrtn poadavek uivatele

po pouit (skonen prce s aplikac) se staen kd zahod


nebo se uchov v cache pamti, aby se pt sthl rychleji
aplikace se na potai neinstaluje !!

pklad:
pouv se napklad u MS Office 365 (Office on Demand, Click to Run)
vsledn efekt je pro uivatele stejn, jako pi pouit lokln nainstalovan aplikace

NSWI090
Potaov st I

pklad: MS Office 365

verze 4.0, lekce 10, slide 33

desktop verze
monolitick verze
aplikace, lze
nainstalovat trvale
na konkrtn pota
v rmci MS Office
2013 i 365

verze on demand
monolitick verze,
stejn schopnosti
jako desktop verze,
ale neinstaluje se
natrvalo

Click to Run
een la tenk
klient (NC)

stahuje se ze st (streaming)
spust se, pouije a zahod

verze Online (dve Web App)


forma RIA (Rich Internet
Application)
napsno v Javascriptu
b v rmci browseru

NSWI090
Potaov st I

Server-Based Computing

verze 4.0, lekce 10, slide 34

samostatn vpoetn model


lze chpat t jako dl variantu modelu Network-centric computing

podstata:
cel aplikace b v sti, na vhodnm serveru
na tzv. aplikanm serveru (obdoba hostitelskho potae)
kter jako svou slubu poskytuje monost provozovn aplikac

stejn jako
u modelu
host/terminl

koncov zazen (u uivatele) se chov jako terminl


jsou k nmu peneny pouze:
vstupy aplikace

ale ji v pln (rastrov) grafice, lze mt pln grafick GUI

vstupy od uivatele

rozdl oproti modelu


host/terminl

stisky klves, pohyby my

vhody:
ve je maximln centralizovan
vznamn ni nklady na drbu a
sprvu

terminl

aplikace jsou
umstny zde

aplikace jsou
provozovny zde

mal nroky na koncov zazen


nen nutn velk vpoetn kapacita
me jt napklad o mobiln telefon,
tablet, PDA, netbook,

penos
vstup/vstup

aplikan
server

NSWI090
Potaov st I

Server-Based Computing

verze 4.0, lekce 10, slide 35

problm modelu Server-based computing:


pln grafick (rastrov, bitmap-ov) data, generovan aplikac (bc na aplikanm
serveru) jsou stle moc velk
ne aby bylo nosn je penet po sti (do koncovho zazen uivatele)

een:
ke generovn (rastrovch) grafickch dat dochz a na koncovm zazen uivatele
a od aplikace pichz pouze pkazy typu vykresli okno velikosti XY na souadnicch AB
pokud jsou tyto pkazy vhodn navreny, me bt objem penench dat minimln

krom poteby penosu rastrov grafiky, kde tento pstup selhv

pedstava: grafick subsystm operanho systmu se vyzne a penese do terminlu


kde teprve generuje sv data

dsledek:
na terminlu mus bt instalovna
potebn podpora
pro vykreslovn v grafice
jaksi klient

aplikace

os
pkazy

tak (aplikan) server mus bt upraven


aby negeneroval grafick data, ale poslal
terminlu pkazy

terminl

aplikan
server

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 36

pklady: X-Window, XenApp

na modelu Server-Based Computing funguj (napklad):


systm X-Window (X11, X)

aplikace

star een ze svta Unixu, prezentovan jako een klient/server


s obrcenou terminologii:

aplikace b na klientovi
pracovn stanice uivatele je serverem:
server
poskytuje aplikaci slubu, spovajc v zobrazovn
v generovn grafickch (rastrovch) dat, pmo na uivatelskm zazen

systm WinFrame (MetaFrame, dnes XenApp) spolenosti Citrix, 1995


pvodn: upraven server Windows NT 3.51, funguje jako aplikan server
pro vce uivatel souasn

mohou na nm provozovat bn aplikace pro Windows

grafick subsystm penesen na terminl

zde mus bt instalovna potebn podpora


WinFrame klient (ICA klient, Online plugin, Citrix Receiver , XenApp plugin)

pro komunikaci mezi aplikanm serverem a terminlem slou protokol ICA

ICA: Independent Computing Architecture


jde o pkazy k vykreslovn, kter klient na terminlu provd

klient

NSWI090
Potaov st I
verze 4.0, lekce 10, slide 37

pklady: MS Terminal Services

na modelu Server-Based Computing funguje (napklad):


Terminal Services spolenosti Microsoft
1997: Microsoft koupil licenci od Citrixu a zakomponoval ji do Windows NT 4.0
1998: vsledkem je aplikan server MS Terminal Server Edition (code name Hydra)

jako samostatn produkt

pozdji: funkce aplikanho serveru (MS Terminal Services) zabudovny do standardnch


server Windows

do MS Windows Server 2000, do Windows Server 2003

Remote Desktop Services (RDS) spolenosti Microsoft


2009: vznikly pejmenovnm z Terminal Services v MS Windows Server 2008
soust je nap. Pipojen ke vzdlen ploe

klient je standardn soust vech Windows


server je soust vych verz Windows
nap. Windows 7 Ultimate a vych

You might also like