You are on page 1of 34

Tr!

ng "i hc Bch Khoa H ni


Vin Cng ngh Thng tin v Truyn thng
M hnh
Cc h! th"ng phn tn
Hong Minh Th!c, hmthuc@mail.hut.edu.vn
H Ni - 2012
M!C TIU C"A H#C PH$N
Nghin c%u m hnh ki&n trc Client-Server
Qu trnh v t'(ng tc Client-Server
Pht tri)n cc h* %ng d+ng trn c( s, ki&n trc
-a t.ng Client-Server
L/p trnh %ng d+ng theo m hnh Client-Server
trong mi tr'0ng phn tn - m1ng Internet (Java)
N2I DUNG H#C PH$N G3M 5 PH$N
1. T4ng quan: Cc khi ni*m, m hnh ki&n trc t/p
trung, m hnh ki&n trc phn tn, m hnh ki&n trc
Client-Server.
2. Gi5i thi*u v6 m hnh ki&n trc Client-Server.
3. Lin k&t trong Client-Server
4. Layout c7a cc %ng d+ng, ki&n trc 1 t.ng, ki&n trc
Client-Server 2 t.ng, ki&n trc 3 t.ng, ki&n trc N t.ng
5. L/p trnh Client-Server (Java)
YU C$U C"A H#C PH$N
T t!m hiu cc chi tit trong cc ti liu tham kho
Kh nng lm vic c lp v lm vic theo nhm
Bi tp ln:
Lm vic theo nhm
Sinh vin t c cc ti liu cn thit (ti liu k thut,
ngn ng mi, v.v)
T"nh sng t#o v ch ng khi lm vic.

TI LI8U THAM KH9O
Books:
1. Robert Orfali & Dan Harkey: "Client/Server Programming
with Java and CORBA".
2. Robert Orfali et al the Essential Client/Server Survival
Guide, second edition, Wiley & sons, ISBN 0-471-15325-7
3. D. Travis, Dewire, Client/Server Computing, Mc Graw-hill
Press, 1993.
4. N. Jenkins, Client/Server Unleashed, Sams Publishing,
1994.
TI LI8U THAM KH9O (ti&p)
5. Java l/p trnh m1ng, Nguy:n Ph'(ng Lan, NXB Gio d+c
2001.
6. Internetworking v5i TCP/IP: Cc nguyn l;, giao th%c, ki&n
trc. Nguy:n Qu<c C'0ng, NXB Lao -=ng 2001
7. Cc ti li*u v6 XML, HTML, JSP, Servlet, RMI, CORBA,
SOAP, JAVA
8. Cc ti li*u v6 m hnh ki&n trc Client-Server (Web)
.....................
Ch'(ng 1: T4ng Quan
N=i dung:
1.1 Phn tch thi&t k& - M hnh
1.2 M hnh ki&n trc t/p trung
1.3 M hnh ki&n trc phn tn
1.4 H* phn tn
1.5 M hnh ki&n trc Client-Server
1.6 Ki&n trc v c( s, h1 t.ng
1.1 Phn tch thi&t k& - M hnh
Phn tch thi&t k&
(1) Yu c.u %ng d+ng: nh>ng trnh by c7a ng'0i dng
(2) Phn tch - What ? - l g? thnh ph.n no ?
(3) Thi&t k& - How ? - nh' th& no ? b?ng cch no ?
(4) L/p trnh - ngn ng> v5i kh@ nAng th) hi*n k&t qu@ phn
tch& thi&t k&

1.1 Phn tch thi&t k& - M hnh
M hnh
Phn tch v thi&t k& khc nhau v6 m+c -ch nh'ng c@ hai
-6 l qu trnh nh/n th%c v m t@ h* th<ng
Phn tch nh/n th%c v m t@ h* th<ng , m%c logic
Thi&t k& nh/n th%c v m t@ , m%c v/t l;
B) nh!n th"c v m t# trong phn tch v thi&t k& chng
ta ph@i sC d+ng cc m hnh

1.1 Phn tch thi&t k& - M hnh
M hnh l hnh @nh thDc t1i m=t bi ton / vEn -6, -'Fc
di:n -1t theo m=t hnh th%c m ta hi)u -'Fc, nh': VAn
b@n, ph'(ng trnh, -G thH ... hay cc thnh ph$n v quan
h%, t&'ng tc gi(a cc thnh ph$n.
Phn tch th) hi*n m hnh : ch%c nAng, d> li*u
v quan h* gi>a cc thnh ph.n.
Phn tch th) hi*n m hnh : ki&n trc.
ThDc hi*n phn tch thi&t k& vEn -6/ bi ton theo
m hnh Client - Server
1.1 Phn tch thi&t k& - M hnh
C# s$ ph%#ng php lu&n v' m hnh Client - Server:
+ Phn tch thi&t k&
+ H'5ng -<i t'Fng.
+ Ki&n trc -a t.ng
+ T'(ng tc phn tn - mi tr'0ng phn tn.
C# s$ cng ngh!:
+ T4 ch%c CSDL: Acess, SQL, Oracle,.....
+ XML, HTML.
+ Ontologies.
+ Trnh duy*t Web, DHch v+ Web,...
+ Cc ngn ng> l/p trnh: ch%c nAng, -<i t'Fng, ch%c nAng & -<i
t'Fng, C++, JAVA,
+ Cng ngh* trong mi tr'0ng phn tn: RMI, CORBA,....
+ Cng ngh* Agent.....
1.1 Phn tch thi&t k& - M hnh
M hnh client-server, th) hi*n:
Thnh ph.n no trn Client,
Thnh ph.n no trn Server,
Quan h* gi>a cc thnh ph.n,
Ki&n trc %ng d+ng,
Cng c+ v ngn ng> l/p trnh t'(ng %ng.
Presentation
Application
Logic
Data
Management
DBMS
Client
User
Program &
Interface
S1
S2
S3
Application Server
User
Programs
Cc h thng !ng d"ng
(LHch sC Client /Server)
M hnh ki&n trc t/p trung
M hnh ki&n trc phn tn
M hnh ki&n trc Client-Server

1.2 M hnh ki&n trc t/p trung
T!i sao ki"n trc t#p trung ?
$p %ng d&ch v' cho nhi(u ng)*i: t+ 200 ,"n 10,000+
Cc kho d> li*u l5n -'Fc l'u tr> t/p trung
T<i thi)u ho d> li*u trn -'0ng truy6n m1ng
Cc thao tc trn Server, chI k&t qu@ hi)n thH trn Client
1.2 M hnh ki&n trc t/p trung
(u )i*m
REt 4n -Hnh, -= tin c/y cao, chHu t@i t<t (well supported )
Chi ph rJ v ph+c v+ cho hng ngn ng'0i dng
Nhn vin khng c.n bi&t nhi6u v6 kK thu/t chuyn su
Thu/n lFi tri)n khai cc %ng d+ng th'(ng m1i - kinh doanh.
Y+u )i*m
Ph.n c%ng , trung tm c cEu hnh m1nh, ph.n m6m ph%c
t1p--= l5n cao.
Chi ph cao cho h* th<ng trung tm
C.n nhi6u cn b= hL trF
Chi ph tAng ln rEt nhi6u khi c.n m, r=ng kh@ nAng
1.2 M hnh ki&n trc t/p trung
1.3 M hnh Ki&n trc phn tn
1.3 M hnh Ki&n trc phn tn
T,i sao ki+n trc phn tn ?
B<i v5i cc m1ng c+ b= - Lan: t<c -= cao (10-100
Mb/s, cp quang cao h(n 1,2 GB/s), chi ph thEp.
Ng'0i sC d+ng dng cc my tnh thng th'0ng,
khng c.n thi&t cEu hnh m1nh.
Khng c h* th<ng qu@n l; thng tin nn cc -p %ng
nhanh v hi*u qu@
1.3 M hnh Ki&n trc phn tn
(u )i*m
Chi ph v6 ph.n c%ng v ph.n m6m rJ.
Ng'0i sC d+ng ki)m sot hon ton v6 mi tr'0ng-ti nguyn
c7a mnh.
Chi ph thEp khi c thm ng'0i sC d+ng.

Y"u ,i-m
Kh khAn khi phn chia ti nguyn cho nhi6u ng'0i cng sC
d+ng.
Cc m1ng v h* -i6u hnh t dHch v+ ki)m sot hoMc vEn -6
qu@n l; ton b= ti nguyn trn h* th<ng.
Nhi6u nh cung cEp nn @nh h',ng -&n v/n hnh, hL trF v
-= tin c/y.
1.4 H* phn tn
BHnh nghNa h* phn tn
-/N1: H* phn tn (HPT) trong - cc ch%c nAng v d> li*u -'Fc
phn tn trn nhi6u tr1m (site), -'Fc k&t n<i v5i nhau thng qua m=t
m1ng my tnh (MMT).
-/N2: H* phn tn bao gGm t/p cc my tnh tD trH -'Fc n<i v5i
nhau b,i m=t MMT v -'Fc ci -Mt ph.n m6m HPT.
-/N1 & -/N2 ! HPT = MMT + Ph.n m6m HPT.
= Computer network + Distributed system
software.

(1) Chia s. ti nguyn:
T/p trung hoMc phn tn hoMc c@ hai
T'(ng tc theo ki&n trc Client-Server
Cc ti nguyn th'0ng -'Fc t4 ch%c thnh cc -<i t'Fng,
-'Fc -Hnh danh duy nhEt v c th) di chuy)n trong h* th<ng
m khng c.n -Hnh danh l1i
(2) Tnh m$:
Kh@ nAng b4 sung dHch v+ m5i m khng lm c@n tr, hoMc
xung -=t -<i v5i cc dHch v+ - c.
1.4 H* phn tn
Cc -Mc tr'ng c7a h* phn tn
1.4 H* phn tn
Cc -Mc tr'ng c7a h* phn tn
(3) Kh/ n0ng thay )1i qui m:
V d+: tO 1 server v m=t Client, tAng ln 2,3 server v thm my
Client
(4) Tnh t%#ng tranh
(5) Tnh ch2u l3i: C hai gi@i php:
- Thi&t k& -= d' thOa ph.n c%ng
- Thi&t k& kh@ nAng ph+c hGi cho ph.n m6m
(6) Tnh trong su"t:
Kh@ nAng che dEu sD r0i r1c v ho1t -=ng thDc t& c7a h* th<ng,
che dEu -<i v5i ng'0i dng v cc ch'(ng trnh %ng d+ng.
Cc v d4:
1) H* th<ng m1ng trong cc t4 ch%c (chPng h1n BHBKHN,
cc khoa, phng ban, b= mn, ....) cc -(n vH trDc thu=c (b=
mn) cung cEp cc dHch v+ : gio trnh, sch, bi bo, qui trnh
cng ngh*, chuyn gia lNnh vDc,.....
2) H* th<ng m1ng gi>a cc tr'0ng -1i hQc, cc h* qu@n trH tri
th%c (E-Learning, th' vi*n, h* chuyn gia) -> cc dHch v+
cung cEp.

1.4 H* phn tn
1.5 M hnh Ki+n trc Client/Server
(M hnh ki"n trc t#p trung)
MAINFRAME
M!t my Server c c"u hnh m#nh
Cc trnh $ng d%ng t&p trung
Cc thi't b( )*u cu+i k't n+i tr,c ti'p
Gi-i php qu-n l. ti nguyn t&p trung
1.5 M hnh Ki+n trc Client/Server
(M hnh trc phn tn)
M hnh phn tn:
Chia nh/ng v"n )0/$ng d%ng l1n thnh cc
thnh ph*n ring bi2t, nh3 h4n.
Cc thnh ph*n c quan h2, lin k't v1i nhau.
Cc qu trnh, trnh $ng d%ng ch#y trn cc
my gi+ng nhau ho5c khc nhau.
Qu trnh t64ng tc lin k't yu c*u giao di2n
Yu c*u $ng d%ng )67c m8 r!ng - m#ng
1.5 M hnh Ki+n trc Client/Server
(M hnh trc phn tn pht tri)n *i)m m+nh )
Phn tn tnh ton;
Phn tn d> li*u;
Phn tn k&t n<i;
Tnh sRn sng -) dng;
Tnh tin c/y;
Gi@m chi ph.
1.5 M hnh Ki+n trc Client/Server
(M hnh trc phn tn kh,c ph-c kh kh.n )
Kh@ nAng lin k&t;
Khng chSc chSn, khng 4n -Hnh;
BGng b= v6 th0i gian;
Tnh ton vTn;
Khng -Gng b=;
MEt thng tin;
Thay -4i k&t n<i;
Cc lLi v6 my;
Qu@n l; giao dHch, tch hFp k&t qu@.
1.5 M hnh Ki+n trc Client/Server
1.5 M hnh Ki+n trc Client/Server
T!i sao ki"n trc Client/Server?
" Gi5i h1n c7a cc m hnh trn
Ki&n trc t/p trung -> ch%c nAng,d> li*u, ph'(ng th%c t/p
trung Server, Client chI login.
Ki&n trc phn tn -> ch%c nAng, d> li*u , ph'(ng th%c n?m
c@ trn cc my.
Client - Server: ch%c nAng, d> li*u, ph'(ng th%c n?m c@ trn
cc my v5i quan h* Client-Server.
" Thu/n lFi cho vi*c sC d+ng cc my tnh c nhn thay th&
cc my tnh mainframe
1.5 M hnh Ki+n trc Client/Server
.u ,i-m
Chi ph hi*u qu@ cho hng ngn ng'0i sC d+ng
Chi ph thEp khi thm ng'0i sC d+ng
Chi ph rJ v6 ph.n c%ng v ph.n m6m.
Ki)m sot t<t ton b= vi*c truy c/p d> li*u
Ng'0i sC d+ng ki)m sot -'Fc ton b= mi tr'0ng c+ b=
Linh ho1t trong vi*c truy c/p thng tin.
-i*m y+u
B= tin c/y
B= ph%c t1p
Trnh -= kK thu/t c7a ng'0i dng v hL trF kK thu/t c.n ph@i
-'Fc -o t1o.
1.6 Ki&n trc Client-Server v c( s, h1 t.ng
# Cc d!ch v trung gian: nm gia phn mm ng dng v h iu
hnh-cc phn mm m"ng, h tr cho lin tc.
Ki&n trc
%ng d+ng

Mi tr#ng trung gian:
+ Cc chun lin tc
( CORBA, DCOM...)
+ Cc c ch truyn
thng ip (RPC, RMI...
Cc chun d!ch v
m"ng, nh#:
SNMP, TCP/IP
H iu hnh thng
dng: Unix, Linux,
Windows ...
Cc d!ch v h tr
ca h iu hnh
mc cao
Quan h gia cc thnh phn ca h thng %ng d+ng
1.6 Ki&n trc Client-Server v c( s, h1 t.ng
Ki&n trc c7a trnh %ng d+ng ph+ thu=c nhi6u vo
kh@ nAng tnh ton v cc nguGn ti nguyn c7a
m1ng.
Cc dHch v+ -'Fc c( s, h1 t.ng cung cEp.
Ng'0i thi&t k& ki&n trc %ng d+ng dDa vo c( s, h1
t.ng -) thi&t k& cc ch'(ng trnh %ng d+ng.
Hay vi*c thi&t k& ki&n trc %ng d+ng l vi*c k&t hFp
ph hFp gi>a cc c( ch& c7a c( s, h1 t.ng v cc
ch%c nAng, nhi*m v+ c7a %ng d+ng.
T4ng k&t ch'(ng 1
Application
Cc ph#ng thc
( c ch suy din )
D liu
Hoc tr"ng thi bn trong
Giao din vi
ng#i dng
T#ng tc vi cc
application hoc
i t#ng khc
Tc ng t mi
tr#ng phn tn
Applicaton tc
ng ra mi tr#
ng phn tn
Ch'(ng trnh %ng d+ng trong mi tr#ng phn tn
T4ng k&t ch'(ng 1
Tri*n khai 5ng d4ng:
Qu trnh phn tch:
K&t qu@ t/p { cc ch%c nAng } / { cc -<i t'Fng }
Thi&t k& : cc thnh ph.n, giao -i*n, CSDL,...
K&t qu@ phn tch thi&t k& sU -'Fc tri)n khai theo
ki&n trc %ng d+ng no ?
Ki&n trc %ng d+ng Client - Server v vai tr quan
trQng c7a c( s, h1 t.ng.

You might also like