báo cáo tiểu luận môn lập trình mạng xây dựng chương trình cho hệ đa server với cơ sở dữ liệu gắn bó cho phép đăng ký tua du lịch từ xa trong điều kiện có sự cố

24 639 1
báo cáo tiểu luận môn lập trình mạng xây dựng chương trình cho hệ đa server với cơ sở dữ liệu gắn bó cho phép đăng ký tua du lịch từ xa trong điều kiện có sự cố

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 1 ĐỀ TÀI: XÂY DỰNG CHƯƠNG TRÌNH CHO HỆ ĐA SERVER VỚI CSDL GẮN BÓ CHO PHÉP ĐĂNG KÝ TUA DU LỊCH TỪ XA TRONG ĐIỀU KIỆN CÓ SỰ CỐ Học viên: Nguyễn Quang Thạch Lớp KHMTK24 (2011 – 2013) GVHD: PGS.TS. Lê Văn Sơn BÁO CÁO TIỂU LUẬN MÔN HỌC LẬP TRÌNH MẠNG 2 CÁC VẤN ĐỀ BÁO CÁO I. Các giải thuật đảm bảo gắn bó dữ liệu 1. Giải thuật 2 pha tuyến tính 2. Giải thuật giao dịch lồng mở MAONT II. Phát biểu bài toán - Giải thuật giải quyết bài toán III. Kết quả chương trình 3 I. Các giải thuật đảm bảo gắn bó dữ liệu 1. Giải thuật 2 pha tuyến tính (2PC) - Ta giả thiết rằng thứ tự giữa các vị trí có tham gia thực hiện một giao dịch là 1,2,…N. với điều phối viên là vị trí 1, còn lại là các thành viên. Thuật toán được trình bày như sau: - Điều phối viên gửi thông báo prepare đến thành viên 2. Nếu thành viên 2 chưa sẵn sàng ủy thác giao dịch, nó gửi thông báo biểu quyết hủy bỏ Vote-abort (VA) đến thành viên 3 và giao dịch bị hủy tại thời điểm này (hủy bỏ đơn phương của 2). Ngược lại nếu thành viên 2 đồng ý ủy thác, nó gửi thông báo vote-commit (VC) cho thành viên 3 rồi chuyển sang trạng thái READY. 4 I. Các giải thuật đảm bảo gắn bó dữ liệu 1. Giải thuật 2 pha tuyến tính (2PC) - Quá trình này tiếp tục cho đến khi một biểu quyết uỷ thác đến được thành viên N. Đến đây kết thúc pha1. Nếu N quyết định ủy thác nó gửi trở lại cho thành viên N-1 thông báo global-commit (GC); bằng không, nó gửi một thông báo hủy bỏ toàn cục global-abort (GA). Theo đó các thành viên chuyển sang trạng thái thích hợp (COMMIT hoặc ABORT) và làm lan truyền thông báo trở về điều phối viên 1 2 3 4 5 N prepare VC/VA VC/VA VC/VA VC/VA GC/GA GC/GA GC/GA GC/GA GC/GA Pha 1 Pha 2 5 I. Cỏc gii thut m bo gn bú d liu Truy vấn CSDL cục bộ Begin-giao dịch Server Cuốii Kết thúc giao dịch Bắt đầu Nhận danh sỏch Di chuyn Trả ds kết quả về server lin trc hoc trỡnh xl yờu cu Gi danh sỏch di chuyn n server k tip To ds kt qu gm kt qu truy vn cc b v kt qu tr v t server lin k Kết thúc S - Nhim v ca TT2PC-Server chy ti cỏc server l truy vn CSDL cc b, gi DSDC n server k tip trong danh sỏch (nu nú cha l server cui cựng trong danh sỏch di chuyn) v tr kt qu truy vn v server lin trc hoc trỡnh x lý yờu cu (nu nú l server u tiờn trong danh sỏch di chuyn). - Khi TT2PC-Server nhn c DSDC, chỳng tin hnh thc hin cỏc thao tỏc theo s bờn S thut toỏn TT2PC-Server 6 I. Các giải thuật đảm bảo gắn bó dữ liệu 2. Giải thuật giao dịch lồng mở MAONT (Model Advanced of Open Nested Transaction) MAONT được cải tiến cho phép các giao dịch tiến hành đồng thời do một giao dịch có thể chứa một giao dịch con khác theo phương pháp tiếp cận khóa chốt, nhằm vào việc cập nhật, đăng ký từ xa trong hệ thống. - Mỗi giao dịch con thực thi như một giao dịch và khi hoàn tất sẽ chuyển khóa của nó cho giao dịch cha. - Một giao dịch cha kế thừa các khóa và các cập nhật của những giao dịch con đã ủy thác của nó. 7 I. Các giải thuật đảm bảo gắn bó dữ liệu 2. Giải thuật giao dịch lồng mở MAONT (Model Advanced of Open Nested Transaction) - Trạng thái kế thừa chỉ có các hậu duệ của giao dịch cha kế thừa là thấy được giao dịch con đã uỷ thác. - Nếu một giao dịch con bị hủy bỏ thì tất cả các khóa và cập nhật mà giao dịch con đó và các giao dịch cha kế thừa của nó có đều bỏ đi. Cha của giao dịch con bị hủy bỏ không nhất thiết phải hủy bỏ. 8 II . Phát biểu bài toán Ta xây dựng một hệ thống cho phép khách hàng đăng ký Tua du lịch trên mạng internet với điều kiện sau: - Hệ thống bao gồm ba Server và CSDL đặt tại ba Server khác nhau. - Hệ thống đăng ký phải đảm bảo tính gắn bó dữ liệu. - Trong quá trình đăng ký, sự cố có thể xẩy ra. • Để giải quyết bài toán ta đưa ra danh sách di chuyển dùng để lưu địa chỉ các server và các câu lệnh truy vấn SQL của các server dựa trên nguyên lý của 2 giải thuật nêu trên. • Bài toán được mô tả bởi giải thuật như sau: 9 II . Phát biểu bài toán C1 C2 Cn . . . Trình xử lý yêu cầu TT2CP_Sever1 TQLdịchchuyển QLKNối CSDL CSDL3CSDL2 CSDL1 CSDLN QLKNối CSDL QLKNối CSDL QLKNối CSDL … … 1 2 3 1 TT2CP_Sever2 TT2CP_Sever3 TT2CP_Sever N N Ta giả thiết rằng thứ tự giữa các vị trí có tham gia vào việc thực hiện một giao dịch là 1,2,…N. với điều phối viên là vị trí 1, còn lại là các thành viên. Kỹ thuật được trình bày như sau: - Khi nhận một yêu cầu từ các Client thì trình xử lý yêu cầu thành lập một Danh sách các database server sẽ truy vấn đến các câu lệnh SQL tương ứng được thực hiện tại mỗi Server. Kỹ thuật giải quyết bài toán 10 II . Phát biểu bài toán C1 C2 Cn . . . Trình xử lý yêu cầu TT2CP_Sever1 TQLdịchchuyển QLKNối CSDL CSDL3CSDL2 CSDL1 CSDLN QLKNối CSDL QLKNối CSDL QLKNối CSDL … … 1 2 3 1 TT2CP_Sever2 TT2CP_Sever3 TT2CP_Sever N N Sau khi thành Lập danh sách di chuyển (danh sách di chuyển chứa địa chỉ Server tham gia truy vấn và danh sách các câu lệnh truy vấn tại các server) nó sẽ chuyển cho TT2PC-Server1 thông qua RMI. Mỗi TT2PC-Server cài đặt một giao diện cung cấp thuật toán 2PC với tham số là danh sách di chuyển, chỉ mục và trả về kết quả là danh sách kết quả. Kỹ thuật giải quyết bài toán [...]... v cho server1 l null thỡ x lý khụng thnh cụng, ngc li server1 x lý kt qu nhn c tr v cho Client 14 II Phỏt biu bi toỏn Bắt đầu Nhận yêu cầu từ Client S khi gii thut Thành lập danh sách di chuyển TT2PC -Server1 TT2PC -Server2 Mở giao dịch Mở giao dịch Truy vấn CSDL cục bộ TT2PC-ServerN Truy vấn CSDL cục b Server Cuối i S gi pthc t xa trờn server k tip Mở giao dịch Truy vấn CSDL cục bộ S gi pthc t xa. .. CSDL3 Server1 Server2 Server3 C1 C2 C3 Trong mụ hỡnh trờn C1, C2, C3 l cỏc Client truy cp n Server1 , Server1 tip nhn yờu cu t cỏc Client, truy vn CSDL 1 trờn server cc b, gi yờu cu n cỏc server cú tham gia vo truy vn truy vn cỏc CSDL ti cỏc server ny, nhn kt qu tr v t cỏc server v tr kt qu v cho Client 17 III Kt qu chng trỡnh Mụ hỡnh ng dng ca h thng: Chng trỡnh c trin khai trờn 1 mỏy vi ba server. .. pthc t xa trờn server k tip Server cui L ! = NUL Chuyn sang trng thỏi u thỏc S Chuyn sang trng thỏi khụi phc ! = NUL L Chuyn sang trng thỏi u thỏc S S ! =NULL Chuyn sang Chuyn sang trng thỏi u trng thỏi khụi thỏc phc Chuyn sang trng thỏi khụi phc Kết thúc giao dịch Kết thúc giao dịch Kết thúc giao dịch Trả kết quả về cho Client Trả kết quả về cho Server lin trc Trả kết quả về cho Server lin trc... Phỏt biu bi toỏn Ti server cui cựng trong danh sỏch di chuyn, nu vic truy vn c s d liu cc b thnh cụng thỡ TT2pC -Server cui ny s commit transaction v tr v danh sỏch kt qa khỏc null Da vo kt qu tr v ny server ng trc trong danh sỏch di chuyn s commit hoc rollback giao dch cc b v tr v kt qu cho server lin trc 13 CSDL2 CSDL1 QLKNi CSDL QLKNi CSDL QLKNi CSDL CSDLN CSDL3 QLKNi CSDL C1 TT2CP_Sever1 TQLdchchuyn... trc Kết thúc 15 II Phỏt biu bi toỏn Mụ hỡnh CSDL H thng gm nhiu Server cha cỏc chng trỡnh v c s d liu ti cỏc Server nh sau: Server1 : Lu tr database v Tour, file database l Tour gm hai bng Tour, DangKy, DangKy_DichVu Server2 : Lu tr database v Hotel, file database l KhachSan gm hai bng Khach_San, Tour_KhachSan, Dich_Vu, DichVu_KhachSan Server3 : Lu tr database v Transport, file database l PhuongTien gm... v chuyn danh sỏch di chuyn ny n TT2PC -Server2 Quỏ trỡnh ny tip tc cho n khi kt thỳc danh sỏch di chuyn (n TT2PC -Server cui) 12 CSDL2 CSDL1 QLKNi CSDL QLKNi CSDL QLKNi CSDL CSDLN CSDL3 QLKNi CSDL C1 TT2CP_Sever1 TQLdchchuyn 1 1 Trỡnh x lý yờu cu Cn TT2CP_Sever2 TT2CP_SeverN TT2CP_Sever3 C2 2 3 N K thut gii quyt bi toỏn II Phỏt biu bi toỏn Ti server cui cựng trong danh sỏch di chuyn, nu vic truy... cho Client 17 III Kt qu chng trỡnh Mụ hỡnh ng dng ca h thng: Chng trỡnh c trin khai trờn 1 mỏy vi ba server gi lp - u tiờn ta khi ng ba server v client bo m s kt ni n cỏc server v Client - Khi ng client ng ký tour v cho kt qu thnh cụng hay khụng v danh sỏch kt qu trong cỏc sever 18 III Kt qu chng trỡnh Mụ hỡnh ng dng ca h thng: 19 III Kt qu chng trỡnh Mụ hỡnh ng dng ca h thng: 20 III Kt qu chng trỡnh... trỡnh x lý ti bt k mt TT2PC -Server no b li thỡ kt qu tr v l null, da vo kt qu ny cỏc TT2PC -Server commit hoc Rollback giao dch ang qun lý 11 CSDL2 QLKNi CSDL QLKNi CSDL QLKNi CSDL C1 CSDLN QLKNi CSDL 1 1 Trỡnh x lý yờu cu Cn TT2CP_Sever1 TQLdchchuyn TT2CP_Sever2 C2 CSDL3 TT2CP_Sever TT2CP_Sever3 N CSDL1 2 3 N K thut gii quyt bi toỏn II Phỏt biu bi toỏn - Nh vy, khi TT2PC -Server1 nhn c danh sỏch di . 1 1 ĐỀ TÀI: XÂY DỰNG CHƯƠNG TRÌNH CHO HỆ ĐA SERVER VỚI CSDL GẮN BÓ CHO PHÉP ĐĂNG KÝ TUA DU LỊCH TỪ XA TRONG ĐIỀU KIỆN CÓ SỰ CỐ Học viên: Nguyễn Quang Thạch Lớp KHMTK24. internet với điều kiện sau: - Hệ thống bao gồm ba Server và CSDL đặt tại ba Server khác nhau. - Hệ thống đăng ký phải đảm bảo tính gắn bó dữ liệu. - Trong quá trình đăng ký, sự cố có thể xẩy ra. • . KHMTK24 (2011 – 2013) GVHD: PGS.TS. Lê Văn Sơn BÁO CÁO TIỂU LUẬN MÔN HỌC LẬP TRÌNH MẠNG 2 CÁC VẤN ĐỀ BÁO CÁO I. Các giải thuật đảm bảo gắn bó dữ liệu 1. Giải thuật 2 pha tuyến tính 2. Giải thuật

Ngày đăng: 31/01/2015, 23:05

Từ khóa liên quan

Mục lục

  • Slide 1

  • Slide 2

  • Slide 3

  • Slide 4

  • Slide 5

  • Slide 6

  • Slide 7

  • Slide 8

  • Slide 9

  • Slide 10

  • Slide 11

  • Slide 12

  • Slide 13

  • Slide 14

  • Slide 15

  • Slide 16

  • Slide 17

  • Slide 18

  • Slide 19

  • Slide 20

Tài liệu cùng người dùng

Tài liệu liên quan