Tải bản đầy đủ (.ppt) (12 trang)

báo cáo tiểu luận môn lập trình mạng nâng cao viết 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 với phương án lý tưởng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (955.47 KB, 12 trang )

TIỂU LUẬN MÔN HỌC
TIỂU LUẬN MÔN HỌC
LẬP TRÌNH MẠNG
LẬP TRÌNH MẠNG
GVHD: PGS.TS. Lê Văn Sơn
GVHD: PGS.TS. Lê Văn Sơn
Học viên thực hiện: Nguyễn Tùng Sinh
Học viên thực hiện: Nguyễn Tùng Sinh
Chuyên ngành: Khoa học máy tính – K16
Chuyên ngành: Khoa học máy tính – K16
Đ tài:ề
1. Tên đề tài : Hãy viết 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 với phương án lý tưởng
2. Xây dựng hệ thống 3 Server và CSDL
3. Xây dựng chương trình Client thực hiện đăng ký trong điều kiện
đảm bảo gắn bó thông tin
4. Chú ý : chống “trùng” và chống “ảo”
BỘ GIÁO DỤC VÀ ĐÀO TẠO
BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC ĐÀ NẴNG
Nội dung báo cáo
Nội dung báo cáo

Đặt vấn đề yêu cầu thực tế
Đặt vấn đề yêu cầu thực tế

Dự kiến mô hình khai thác của hệ thống
Dự kiến mô hình khai thác của hệ thống

Hướng giải quyết
Hướng giải quyết



Xây dựng chương trình
Xây dựng chương trình
Đặt vấn đề yêu cầu thực tế
Đặt vấn đề yêu cầu thực tế
Một công ty du lịch có 3 trung tâm lớn đặt tại: Hà
Một công ty du lịch có 3 trung tâm lớn đặt tại: Hà
Nội, T.p Hồ Chí Minh, và Đà Nẵng, phục vụ cho việc
Nội, T.p Hồ Chí Minh, và Đà Nẵng, phục vụ cho việc
tiếp nhận đăng ký và tổ chức các tua du lịch. Công ty
tiếp nhận đăng ký và tổ chức các tua du lịch. Công ty
quyết định xây dựng một hệ thống ứng dụng cho phép
quyết định xây dựng một hệ thống ứng dụng cho phép
đăng ký tua du lịch từ xa với 3 Server đặt tại trung
đăng ký tua du lịch từ xa với 3 Server đặt tại trung
tâm trên, các Server đều tổ chức một cơ sở dữ liệu
tâm trên, các Server đều tổ chức một cơ sở dữ liệu
riêng. Với cơ sở hạ tầng về mạng và thiết bị hệ thống
riêng. Với cơ sở hạ tầng về mạng và thiết bị hệ thống
hoạt động lý tưởng. Yêu cầu đặt ra là cần xây dựng hệ
hoạt động lý tưởng. Yêu cầu đặt ra là cần xây dựng hệ
3 server với cơ sở dữ liệu “gắn bó”.
3 server với cơ sở dữ liệu “gắn bó”.
1.> Dự kiến mô
1.> Dự kiến mô
hình
hình
khai thác ứng dụng
khai thác ứng dụng
Biểu đồ mô tả quan hệ giữa các tác nhân và các use case của hệ thống.

Xem dữ liệu tua
Đăng ký tua cho khách
huỷ đăng ký tua cho khách
Xoá bớt tua
Thêm Tua mới
Đại lý
(client)
Trung tâm
(admin)
2.>Hướng giải quyết
2.>Hướng giải quyết
3.1 Vấn đề đặt ra cho bài toán (chương trình ứng dụng-CTUD):
3.1 Vấn đề đặt ra cho bài toán (chương trình ứng dụng-CTUD):
-
Tài nguyên của hệ là số lượng đặt chổ trên các tua
Tài nguyên của hệ là số lượng đặt chổ trên các tua
-
Sever với điều hành của trung tâm điều phối việc đặt chổ
Sever với điều hành của trung tâm điều phối việc đặt chổ
-
Khách hàng có thể đăng ký tua hoặc hủy đặt tua thông qua đại lý
Khách hàng có thể đăng ký tua hoặc hủy đặt tua thông qua đại lý
Vấn đề gắn bó dữ liệu, chống trùng, chống ảo:
Vấn đề gắn bó dữ liệu, chống trùng, chống ảo:
Trên thực tế, dữ liệu server nào đó cho biết không còn chỗ trống về một tua nào
Trên thực tế, dữ liệu server nào đó cho biết không còn chỗ trống về một tua nào
đó nữa, trong khi trên 1 server khác lại vừa mới có một số khách huỷ tua mà chưa
đó nữa, trong khi trên 1 server khác lại vừa mới có một số khách huỷ tua mà chưa
cập nhật cho các server khác
cập nhật cho các server khác

(ảo)
(ảo)
. Cũng có thể diễn ra trường hợp là cùng một lúc
. Cũng có thể diễn ra trường hợp là cùng một lúc
các server giải quyết đăng ký vào cùng một tua chỉ còn một chỗ trống (
các server giải quyết đăng ký vào cùng một tua chỉ còn một chỗ trống (
trùng
trùng
)
)
cũng do thiếu gắn bó thông tin
cũng do thiếu gắn bó thông tin
CTUD cần hoạt động gắn bó với nhau, điều này đòi hỏi CTUD phải có đầy đủ các
CTUD cần hoạt động gắn bó với nhau, điều này đòi hỏi CTUD phải có đầy đủ các
thông tin về hệ và phải đồng bộ trong việc xử lý nguồn thông tin/dữ liệu có được
thông tin về hệ và phải đồng bộ trong việc xử lý nguồn thông tin/dữ liệu có được
Trong HPT việc đồng bộ hóa chủ yếu yêu cầu thiết lập một trật tự giữa các sự
Trong HPT việc đồng bộ hóa chủ yếu yêu cầu thiết lập một trật tự giữa các sự
kiện. Giữa các trạm với nhau, trật tự đó có thể thể hiện thông qua việc trao đổi các
kiện. Giữa các trạm với nhau, trật tự đó có thể thể hiện thông qua việc trao đổi các
thông điệp với nhau
thông điệp với nhau
3.> Mô hình đăng ký
3.> Mô hình đăng ký
Kiểm tra trùng
Bắt đầu
Nhận yêu cầu từ
client(đăng ký)
Khởi động giao
dịch

Truy vấn cơ sở dũ
liệu
Thực hiện
đăng ký
Chấm dứt hoạt động của giao dịch
Sai
Đúng
4. Xây dựng chương trình
4. Xây dựng chương trình

Mô hình dữ liệu:
Mô hình dữ liệu:
Hệ thống gồm 3 Server:
Hệ thống gồm 3 Server:

Server 1: Lưu trữ database về Tour, gồm 3 bảng Tour, DangKy,
Server 1: Lưu trữ database về Tour, gồm 3 bảng Tour, DangKy,
DangKy_DichVu
DangKy_DichVu

Server 2: Lưu trữ database về Hotel, file database là KhachSan gồm
Server 2: Lưu trữ database về Hotel, file database là KhachSan gồm
các bảng Khach_San, Tour_KhachSan, Dich_Vu,
các bảng Khach_San, Tour_KhachSan, Dich_Vu,
DichVu_KhachSan, DangKy
DichVu_KhachSan, DangKy

Server 3: Lưu trữ database về Transport, file database là PhuongTien
Server 3: Lưu trữ database về Transport, file database là PhuongTien
gồm các bảng Phuong_Tien, Tour_PhuongTien, Dangky

gồm các bảng Phuong_Tien, Tour_PhuongTien, Dangky
Trên mỗi server chứa hai module xử lý chính:
Trên mỗi server chứa hai module xử lý chính:

Module giao tiếp với Client (MGT). Module nó có chức năng nhận dữ
Module giao tiếp với Client (MGT). Module nó có chức năng nhận dữ
liệu từ các chương trình Client để lưu vào cơ sở dữ liệu.
liệu từ các chương trình Client để lưu vào cơ sở dữ liệu.

Module xử lý danh sách di chuyển (MXL). Module này có chức năng
Module xử lý danh sách di chuyển (MXL). Module này có chức năng
nhận dữ liệu từ module giao tiếp và cập nhật vào tất cả các server theo
nhận dữ liệu từ module giao tiếp và cập nhật vào tất cả các server theo
giải thuật danh sách di chuyển.
giải thuật danh sách di chuyển.
1.
1.
Khởi động các module trên server, gồm module MXL, MGT.
Khởi động các module trên server, gồm module MXL, MGT.
2.
2.
Module MGT nhận dữ liệu từ Client và thành lập danh sách
Module MGT nhận dữ liệu từ Client và thành lập danh sách
di chuyển, sau đó chuyển danh sách cho module MXL.
di chuyển, sau đó chuyển danh sách cho module MXL.
3.
3.
MXL mở ra một giao dịch, thực hiện truy vấn dữ liệu ngay
MXL mở ra một giao dịch, thực hiện truy vấn dữ liệu ngay
trên cơ sở dữ liệu cục bộ của mình. Sau khi kết thúc truy

trên cơ sở dữ liệu cục bộ của mình. Sau khi kết thúc truy
vấn, MXL gửi danh sách di chuyển đến Server kế tiếp trong
vấn, MXL gửi danh sách di chuyển đến Server kế tiếp trong
hệ thống đa server.
hệ thống đa server.
4.
4.
Nếu Server cuối cùng trong danh sách di chuyển - nếu việc
Nếu Server cuối cùng trong danh sách di chuyển - nếu việc
thực thi các câu lệnh truy vấn trên CSDL cục bộ thành công
thực thi các câu lệnh truy vấn trên CSDL cục bộ thành công
thì chuyển sang trạng thái uỷ thác (CommitTransaction) và
thì chuyển sang trạng thái uỷ thác (CommitTransaction) và
trả danh sách kết quả khác null về cho Server liền trước nó.
trả danh sách kết quả khác null về cho Server liền trước nó.
Ngược lại trả về null và chuyển sang trạng thái khôi phục
Ngược lại trả về null và chuyển sang trạng thái khôi phục
(RollbackTransaction).
(RollbackTransaction).
Giải thuật danh sách di chuyển :
Giải thuật danh sách di chuyển :
Giải thuật danh sách di chuyển (tt):
Giải thuật danh sách di chuyển (tt):
5.
5.
Server nhận được danh sách kết quả từ Server sau nó trong
Server nhận được danh sách kết quả từ Server sau nó trong
danh sách di chuyển - nếu kết quả khác null thì chuyển
danh sách di chuyển - nếu kết quả khác null thì chuyển
sang trạng thái uỷ thác (CommitTransaction) và gán kết

sang trạng thái uỷ thác (CommitTransaction) và gán kết
quả truy vấn cục bộ vào danh sách kết quả và trả về Server
quả truy vấn cục bộ vào danh sách kết quả và trả về Server
liền trước nó. Ngược lại, chuyển sang trạng thái khôi phục
liền trước nó. Ngược lại, chuyển sang trạng thái khôi phục
(Rollback transaction) trả kết quả về null cho Server liền
(Rollback transaction) trả kết quả về null cho Server liền
trước.
trước.
6.
6.
Khi Server đầu tiên nhận được danh sách kết quả - nếu
Khi Server đầu tiên nhận được danh sách kết quả - nếu
danh sách kết quả khác null thì chuyển sang trạng thái uỷ
danh sách kết quả khác null thì chuyển sang trạng thái uỷ
thác (CommitTransaction) và trả danh sách kết quả cho
thác (CommitTransaction) và trả danh sách kết quả cho
MGT. Ngược lại, chuyển sang trạng thái khôi phục
MGT. Ngược lại, chuyển sang trạng thái khôi phục
(Rollback transaction) và trả kết quả về null cho MGT.
(Rollback transaction) và trả kết quả về null cho MGT.
7.
7.
MGT nhận được danh sách kết quả và xử lý dựa trên danh
MGT nhận được danh sách kết quả và xử lý dựa trên danh
sách kết quả.
sách kết quả.
Giải thuật
Giải thuật
Danh Sách Di Chuyển (tt)

Danh Sách Di Chuyển (tt)
Kết quả đạt được:
Kết quả đạt được:
Nghiên cứu và giải quyết vấn đề trên lý thuyết
Nghiên cứu và giải quyết vấn đề trên lý thuyết
Hạn chế của tiểu luận:
Hạn chế của tiểu luận:
Chưa xây dựng và thiết kế chương trình
Chưa xây dựng và thiết kế chương trình
Kết luận
Kết luận
KẾT THÚC
KẾT THÚC
Cảm ơn thầy và các
Cảm ơn thầy và các
bạn đã lắng nghe!
bạn đã lắng nghe!

×