TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
TIỂU LUẬN
Hệ thống quản trị tác nghiệp của Trung tâm
Thông tấn Quốc gia
MÔN HỌC: Nguyên lý và Mô thức phát triển Hệ phân tán
MÃ HỌC PHẦN: IT6040
Giảng viên: GS. Nguyễn Thúc Hải
Học viên: Lương Quốc Trung
Mã học viên: CB120156
Hà Nội 1/2013
MỤC LỤC
Lời nói đầu
!"#$%&'(") '(*
*+, '/01"'*2%32451*2
%31!1'5 ,6*7'*2
8$/.%$9:;&
*("9)*':,-$:<
$'*2=>?5%@,A..$>B?:
*>B?CDD,A.E.$(F>+:*
1'GHIJDK G1 :,
L?')$;%!<+%
+#(I"5:.,AM7
$::$ 91!"B .(
'5N<JOP,
1DJ:$"(Q-RN69"'O6'S
D $$1)$,
T
1 Tổng quan về hệ phân tán
b. Tính trong suốt (transparency)
L5:'*28$ 13..%"XD><7
$+*2'..'1*7K>?1$*7
)[=>?,.c> 1d
e N 1)dD><I>R>+$=
)
$,
e N 1BdD><B$,
e N 1>6dD><%"X>6f>4($
(
%g$,
e N 1'BBdD><%"X$.>4
(
$'3(%"%''*2K>?,
e N 1I" dD><I" '*2:,
e N 1*(,
e N 1_,
e N 1),
c. Tính mở (openess)
L5:'*28$.F3..%"XIY
>B?$%$"*FJ<'3>B?'O.,
d. Tính co dãn (scalability)
h
L5:'*28$. >O3..'*2
+'Y!1,,N >O`%
,
e iR>$IY$$*7K>?,
e 91'Y!G'B#,
e 91'Y!!"B,
e. Tính chịu lỗi (Fault tolerance)
o
T,NQ%3>+fi%g
`,NQf-Ds %g
h,NQ)fN g
n,NQfrD g
o,NQ[>RfVDD g
m,NQ=>?fp g
L_Q[vrC" !35Q 3,P$ F
_Q. =.,
L_1F. ! @ 'B > 5 > $ + U
' K $ ) q ! @ $ '*2 8 $ =
fprotocolg,A..'*2Q
". =1<+,.T =%
d =*%31fConnection-Oriented protocolg"3)
%31*%,)>+%J "".%31,P$
=%31fConnectionless- Oriented protocolgd%Q%31
'*2%'Ob$,
1.3.1.2 Truyền thông ở mức midleware
a. Gọi thủ tục từ xa fRemote Procedure Callgd
uV H8?;%,w3[
p8?j[3[8p'.lIB
>4$ '.l?'*28j,V*($
'*28$ t8?4JfuVg,A:$%U)'*2K>?5O
< :,
uVJ"I*.@*d
,N?D8DI5I[*7,
T,DIJ:>5'$8'$?I5,
`,9'$DK''3'$4J,
h,9'$4JK' DDI,
m
1.3.2.1 Luồng (threads) và mô hình đa luồng (multi-threading)
~M fthreadg *( 5 3 [ E . ' %
I (I"+M3[,L5M$5'(BJK#(I"
1,L_MJK#Q' >D.S+5 0
)$5%,MWV]
1*W+3[d%M'JK#[
M%l"7 '3*2,L5ME. )
M ,P$3[.S+M,
L55!8M$6 H%.78
1$%Q"%. $I53[$.M',
wz)'Mfmulti-threadingg H% %
5*([51I5JK#,w'._M
'*2 5V]% %>+>'*2*+
I5 >,V*( $ *7'*2 >
*7]-C^,
x
1.3.2.2 Di trú mã (code migration)
i 3 [ 4 $ % $ 5 ? =
$1%H*.l"G<,N $I5<
1.'*2 : 3 3 [ '*2 > 4 .
='5JK !'3.='5JK(,i6OE.
6 X <I; ) >? ( 3 $ % Q
! : '3 < ' )[ ,j'.$>W
O>6,J:>=>?:1$7=>?
$Q%$!3'BQ$ '*2,N
3O.>+%.<['5
:,
•*3[I M`$Qd
,Code segment d=)*([,
T,Resource segmentd= 3'3$I $
$%,•"M@J3$8a
Thuộc tính
Chung cho t
ất
cả các tác tử ?
Mô
tả
p
.
. '5.
uDD
.
A='66''Y*7,
V D . wF $'5'5'3
*7,
D
. . 'Y*7K
>?$K%,
w
w "71flifeg*('1>$
L ID
w
.>64($'3(%
p>D
w
.%"X8
Một vài thuộc tính quan trọng của tác tử giữa các loại tác tử khác nhau.
,
j>RI;'MB.*{'MBfDg,
e V:"
T
fname resolutiongd>'MBD D[%3
G
'B>,
1.3.3.2 Định vị thực thể di động
L5*(YI3'_2>'5 .
'. $ home-based I; '* 'B ' fhome
locationg(l+ 3 'B ' , N
3 [ 'B ' *7'*28($'*2 ,L5
>?%z) D{ID>$ Mobile IP fCV>'5gL_ >'5
K>?'B&CV1'B,N<" 3'3'B&CV'.'Ql
'*2'3mobile host’s home agent f(!"# >'5g,-(!"#
$'*2'G5~p-*(='B&= 'B
&CV >'5, j< =%$ > '55
% .' Q5'B& 7 '> '5
3,AB&3fcare of addressg$'*2'X%#home agent,
w DD )'*25 . K 5 >'5. l
[%3'B' >'5'.,-3 >'5'.'F
?I5 $ [ . l'*2 3 5 >R >$,
-*2.l 5'*7($ >'5';I;
.fwrapg>+ 5.CV$K'3'B&3$.
'!"#,6'.[(K.''*2I 'B'
>'5,6#;'B&CV'*2K>?5
!"%.'B> >'5,
- $*3)/*%+'"!3<
'>'5,
1.3.3.3 Xoá bỏ những thực thể không còn được tham chiếu
'MM,P$%3!" %$$*([.'/07
%3|D'1*23['l%/
J,
N 51177'MM$<!8,
A1+1$'/0.'MM) $,P>
'MM)*3l"T<'d
,~$3$ ''MI56'MM3,
T,~$3$ ''MI56,
n
e P'MI5+'MM)#Q">$ 7\
.
B $Qq712 $Q]Nfuniversal
coordinated timeg,
-3.wwv receiver ['MI5
.l'*2
D ]N,-*23%.
wwv receiver ["K>?")'MI5.'MM)#,
.`")YI3'.$d
,t"),
T,t")jD%DD,
`,t")I[,
N<") '.[1(I",L_JD
*.5I5'37. 5@9Q 5:,t8
B'MM$$,w7]N$[B'MM
l$fg,N 53*F6.fg• <"
$,9.%*F$fg,•,
j5 'B 7 % @ J 9 Q 5 :, ND
3I5'B79•oyQToyyytick 57,N3
+ 1 *( '1 ' '*2 '3 7 ' '
% " y
'*2J:>I;'_3[V
>[5D P
5d
,P
ˆ‰$1%'OJ" '3I:7FVi,
T,-3P
ˆŠ‰•%[V
;%%'OJ"FV,
N5'Q'*2>[IFXP
ˆ‰'M7_
% J" F V
, N5 = '*2 > [ I; piggy-
backing D ''*2K
1.3.4.3 Các giải thuật bầu chọn (election algorithm)
-) :'/03['./*'1
fcoordinatorg*7%FJ*finitiatorg G%[
/'GI, N Q $ l JD JH ) ' IQ 8
m
' 1 ,N)+'1'*2>*Y!
3['GI,
-3<"3['1%.'G':
I[%.$ '853['GI,P[36
,•pŽfK{p gd'13I $[
%:'*2+,
T,•Žf<!{ Dgd %J:I<I3
1,
`,•CŽf%{ D>gd 'M7%:F
,
h, •iŽf:I{>IDgd% 'O%3['Y$%H
>$:I,
b. Phân loại giao tác (Classifications of Transactions)
e t }f| g
~$ '("<0Oh<pCi,93
}$6% H%3!"'*2
%3fcommitedgI0fabortedg, %='5
1 }$3,
e t MfDD> g
w@?3 }K>? M,
L5 M.<6451 .%
$ I M %,L_ E.
5 .,
e t :f>ID> g,
A'%*(.T3)dA%*(•I!Ž
fD D g $ ' % *( • !Ž
x
f D g,
1.3.5 Nhất quán và nhân bản
N :K>?I" './%!8,
.+#> '>I" d
,NX),-351|D'*2 *..3?
$ % G 1 I; '3 $ I"
%,. I" 6 I" 1 '*2 >+ IB *
e L[<!:!"f DgdFQ*6
E'O.'3:!"%')'3D D7,-3
%jIB'5$"*FIF%p*'.:!"
'/0;8*7"<p*%<j,
e L[<!•C•v,
b. Các mô hình nhất quán yếu
e L [ < ! 3 fsD% Dgd [ $ . +
'G
'd
,N)'3I3'MI5 f Œ IDg'*2
%325% >+f> Dg<!5Q,
T,w. 5I3'MI5'*2H '3
%<" *'.'O $$F8(,
`, w . '8 '( B >+ '*2 H
'3%<" *'.'3I3'MI5'O'*2
,
e L[<!'fDDD Dgd.5% >+
'*28$<!<•3.:D !@d
, N*%5 '8 G'(B>+W
'*2<"Q'O*'.IF3["
'*2 $<$,
T,N*%5".f'{DDDg'*2H<
" '8$*'.'OIF3["'*2
$<,
T
`,r)'3I3'MI5 $<!•C•v
e L[<!'$ fD Dg
1.3.5.2 Các mô hình nhất quán lấy client làm trung tâm
Q*7K>?,
e N)freliabilitygd1?$%IB_,
-*2
b$)'*2'BU!'35
% "7[5'7,L51.'5) .
$?$%IB' % "7%>$
e N $fsafetygd1._7[‘%."
J",P>?*3[ '5 1'%X
*2K'* *7CE?Q5'5 $ ,-3
1'%*370 % "%@)!")
%%,
e NI" ['*2fmaintainabilitygd%"X$61IB_
.%@?_,
-351.'*2"h['*28$51.'5
)fdependabilityg,
w : _ : . ` _ d ~_ <
7ftransient faultsg$+_&J"Q<'$%G
+,~_Gfintermittent faultsg$+_J"<'$'.G,
~_:>$/8$_*7fpermanent faultsg,
j _/.[_d_?'Yfcrash
failureg%DDIBD _I0.fomission failureg%DD%'
='*2QK G)_7ftiming failureg%7.
"7*!7!'B_'=frespond failuregDD
." 7*%'6 $1$ _Z farbitrary failureg
T`
%DD"7Z$ 7',
1.3.6.2 Che dấu những hư hỏng bằng sự dư thừa.
-351"B_1<$1@\'J<
13$"% _I0.$_?'Y,_Z.
J">*> H'%3!"$ 1
'$.'*2*+ 57%>$$'.
'*2'*%*7K'OK'5',
*()d
e N''fV g
e -+UuV _7fuVrDDVDDD
|
•Dg
1.3.6.5 Truyền thông theo mô hình nhóm tin cậy
L_3[3)%31'{'3[%$.
1,95Y=*)$%!"%.
. >",N31*23[0[
*3''*2'5)J1%'{')$
%'("%=,
Cam kết phân tán (distributed commit)
t")%3TfTVgT$dIQKfvoting phaseg$
!3 'B fdecision phaseg, N ' %@? *7 2 '
1IB?'Y*7'O'J<")%3`q`V,
1.3.6.6 Phục hồi lỗi (recovery)
L5%._J"[M?_$'3=Q3,
e V? M _ fbackward recoverygd '* 1 4 _
$F'6*'.,
e V?M_3fforward recoverygd5%1'O'$
_
Tn