tiểu luận môn lập trình mạng triển khai công tơ sự kiện phân tán trên n server n=2 và xác định giá trị ảnh của các công tơ sự kiện trên mỗi trạm

30 483 0
tiểu luận môn lập trình mạng triển khai công tơ sự kiện phân tán trên n server n=2 và xác định giá trị ảnh của các công tơ sự kiện trên mỗi trạm

Đ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

Lập trình Mạng nâng cao Tiểu luận Mơn học ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA  BÁO CÁO MƠN HỌC LẬP TRÌNH MẠNG ĐỀ TÀI: TRIỂN KHAI CÔNG TƠ SỰ KIỆN PHÂN TÁN TRÊN N SERVER (N>=2) VÀ XÁC ĐỊNH GIÁ TRỊ “ẢNH” CỦA CÁC CÔNG TƠ SỰ KIỆN TRÊN MỖI TRẠM Giáo viên hướng dẫn: PGS TS LÊ VĂN SƠN Học viên thực hiện: Huỳnh Anh Tuấn Lớp: Khoa học Máy tính – K24 Đà Nẵng, 5/2012 MỤC LỤC LẬP TRÌNH MẠNG .1 GV hướng dẫn: PGS TS Trần Văn Sơn Trang 1/30 Tiểu luận Mơn học Lập trình Mạng nâng cao TRIỂN KHAI CƠNG TƠ SỰ KIỆN PHÂN TÁN TRÊN N SERVER (N>=2) VÀ XÁC ĐỊNH GIÁ TRỊ “ẢNH” CỦA CÁC CÔNG TƠ SỰ KIỆN TRÊN MỖI TRẠM Giáo viên hướng dẫn: PGS TS LÊ VĂN SƠN Học viên thực hiện: Lớp: Khoa học Máy tính – K24 Đà Nẵng, 5/2012 MỤC LỤC .1 LỜI GIỚI THIỆU YÊU CẦU CỦA ĐỀ TÀI PHẦN BÀI TẬP 26 KẾT LUẬN 29 TÀI LIỆU THAM KHẢO .30 GV hướng dẫn: PGS TS Trần Văn Sơn Trang 2/30 Lập trình Mạng nâng cao Tiểu luận Môn học LỜI GIỚI THIỆU Ngày với phát triển khoa học kỹ thuật đặc biệt kỹ thuật tin học phần đáp ứng ngày tốt nhu cầu trao đổi thông tin người, làm cho người khắp giới trở nên gần hơn, thơng tin liên lạc nhanh chóng, thuận lợi hiệu Mạng máy tính hệ tin học phân tán hệ thống xử lý thông tin bao gồm nhiều xử lý vi xử lý nằm vị trí khác liên kết với thông qua phương tiện viễn thông điều khiển thống hệ điều hành Mục đích lập trình mạng phân tán tận dụng khả tính tốn khai thác liệu hệ thống máy tính xa để thực tính tốn nhanh sở sử dụng nhiều xử lý, nhiều nhớ đồng thời nhiều liệu quý giá phân tán khắp nơi Trên hệ thống mạng máy tính kết nối nay, việc xử lý phân tán giải toán lớn hơn, phức tạp thực tế Trong hệ tin học phân tán, việc hợp lực thành viên hệ dẫn đến hàng loạt vấn đề như: định danh, cấp phát tài nguyên dùng chung (đảm bảo tránh tương tranh), giải cố tạo nên tính tin cậy hệ Để đảm bảo tính gắn bó hệ, yêu cầu đặt trước hết đồng hóa tiến trình Với hệ phân tán (khơng có nhớ chung, tạo xung đồng hồ chung), khả gắn bó việc đồng hóa cho hệ dựa phương tiện truyền thông điệp nên lời giải cho yêu cầu đồng hóa thường dừng lại mức chấp nhận hệ Nội dung tiểu luận trình bày vấn đề:  Cở sở lý thuyết hệ phân tán  Đồng hố gắn bó liệu hệ phân tán  Triển khai chương trình tìm “ảnh” công tơ Em xin chân thành cảm ơn thầy giáo PGS.TS Lê Văn Sơn cung cấp kiến thức tài liệu để em hồn thành tiểu luận Học viên thực Huỳnh Anh Tuấn GV hướng dẫn: PGS TS Trần Văn Sơn Trang 3/30 Lập trình Mạng nâng cao Tiểu luận Mơn học YÊU CẦU CỦA ĐỀ TÀI Vấn đề: Ta triển khai công tơ kiện phân tán N Server (N≥2) Giả sử thời gian đầu trạm hoạt động ổn định ta cài đặt trạm công tơ kiện cục Hãy cho biết làm trạm có giá trị "ảnh" công tơ kiện trạm Mục tiêu: Giải toán đồng hóa gắn bó liệu Viết chương trình cho biết giá trị “ảnh” công tơ GV hướng dẫn: PGS TS Trần Văn Sơn Trang 4/30 Lập trình Mạng nâng cao Tiểu luận Mơn học CHƯƠNG I: TỔNG QUAN VỀ HỆ PHÂN TÁN VÀ LẬP TRÌNH MẠNG I.1 Hệ thống tin học Hệ thống tin học (Informatics System) là hệ thống bao gồm hai phần bản là phần cứng (hardware) phần vật lý và phần mềm (software) phần logic chương trình gắn bó hữu với và có khả xử lý thông tin Hệ thống tin học gồm ba thực thể: phần cứng, phần mềm, liệu I.2 Hệ tin học phân tán Hệ tin học phân tán hay nói ngắn gọn hệ phân tán (Distributed System) hệ thống xử lý thông tin bao gồm nhiều xử lý vi xử lý nằm vị trí khác liên kết với thông qua phương tiện viễn thông điều khiển thống hệ điều hành Hệ tin học phân tán là hệ thống không chia sẻ bộ nhớ và đồng hồ Điều đó cho phép phân biệt với một xu hướng tin học khác về phân tán các tính toán nhiều bộ xử lý hay vi xử lý của hệ thống đa bộ xử lý Hệ tin học phân tán đòi hỏi hệ thống phần cứng của mình phải trang bị bộ nhớ cục bộ Các bộ xử lý trao đổi với thông qua các hệ thống đường truyền khác là cáp quang, điện thoại, cáp chuyên dụng, bus trao đổi, Mục tiêu hệ phân tán: - Tăng tốc độ bình qn tính tốn, xử lý - Cải thiện tình trạng luôn sẵn sàng loại tài nguyên - Tăng độ an toàn cho liệu - Đa dạng hóa loại hình dịch vụ tin học - Đảm bảo tính tồn vẹn thơng tin I.3 Các mơ hình hệ phân tán ứng dụng mạng GV hướng dẫn: PGS TS Trần Văn Sơn Trang 5/30 Tiểu luận Mơn học Lập trình Mạng nâng cao Các lớp phần mềm: Kiến trúc phần mềm: cấu trúc phần mềm lớp module thuật ngữ dịch vụ đưa yêu cầu tiến trình trên máy tính khác Platform (hệ nền): phần cứng mức thấp lớp phần mềm (hệ điều hành) Middleware: lớp phần mềm mà mục đích đánh dấu heterogeneity để cung cấp mơ hình lập trình cho ứng dụng, như: CORBA, RMI (Remote Method Invocation), DCOM (Distributed Component Object Model), I.4 Kiến trúc hệ thống I.4.1 Mơ hình Client/Server Một WebServer thường client File Server cục Các WebServer Server Internet khác client DNS Server mà dịch tên miền Internet thành địa mạng GV hướng dẫn: PGS TS Trần Văn Sơn Trang 6/30 Lập trình Mạng nâng cao Tiểu luận Mơn học Một máy tìm kiếm Server, chạy chương trình gọi Web Crawlers mà truy cập Web server thông qua Internet cho thông tin yêu cầu Dịch vụ cung cấp nhiều server, nhiều Server có thể:  Mỗi phần tập hợp đối tượng  Duy trì tồn tập hợp đối tượng vài máy Ví dụ: Web Proxy Server: cung cấp nhớ cache chia xẻ cho máy client site băng qua vài site khác I.4.2 Mô hình tương tác hệ phân tán  Thực truyền thơng: o Sự tiềm ẩn (Latency):  Sự trì hoãn lan truyền: thời gian cần thiết để bit thơng điệp truyền đến đích  Sự trì hỗn truyền: khoảng thời gian truyền bit bit sau thơng điệp  Sự trì hỗn xử lý: thời gian cần để hệ điều hành xử lý/gửi/nhận thông điệp  Sự trì hỗn xếp hàng: thời gian cần để thông điệp xếp hàng cuối máy chủ node trung gian đợi để truyền o Băng thơng (bandwidth): Tổng số thơng tin truyền thời gian cho o Sự biến đống tạp (Jitter): thời gian khác trì hỗn ảnh hưởng thơng điệp khác  Đồng hồ thứ tự kiện: o Khơng có khái niệm tồn cục thời gian o Nhịp độ đồng hồ trôi: nhịp độ tương đối đồng hồ máy tính trơi dạt khỏi từ đồng hồ tham chiếu hoàn hảo o Đồng hóa đồng hồ: GV hướng dẫn: PGS TS Trần Văn Sơn Trang 7/30 Lập trình Mạng nâng cao Tiểu luận Mơn học o Hệ thống định vị tồn cầu (GPS): máy tính sử dụng máy thu radio để nhận thời gian đọc từ GPS với độ xác microgiây Chúng gửi thơng điệp thời gian đến máy tính khác mạng tương ứng chúng  Các đồng hồ logic: thơng điệp thời gian đóng dấu lên với số nối tiếp mà phản chiếu thứ tự lơgic chúng CHƯƠNG II: ĐỒNG BỘ HĨA TRONG HỆ PHÂN TÁN II.1.Đồng hóa tiến trình Đồng hố tiến trình hiểu q trình điều khiển tạo nên ăn khớp với tất tiến trình khác giúp cho hệ phân tán hoạt động nhịp nhàng, tin cậy phòng tránh cố kỹ thuật II.1.1 Vấn đề tương tranh hợp lực Trong tất hệ thống tin học, ta cần phải nghiên cứu công cụ đủ mạnh hiệu để đồng hóa tiến trình Tính cấp thiết mặt ngun lý kỹ thuật vấn đề thể hai nguyên sau : Các tiến trình kể tiến trình xuất phát từ ứng dụng độc lập muốn truy cập vào tài nguyên với số lượng hạn chế hay truy cập vào thông tin dùng chung lúc gây nên tượng truy cập tương tranh Tương tranh nguyên nhân xung đột tiến trình muốn truy cập vào tài nguyên dùng chung Các tiến trình hệ ứng dụng hoạt động theo kiểu hợp lực để giải tóan đặt cho kết nhanh chóng Điều cho phép tăng hiệu sử dụng thiết bị hiệu hoạt động chương trình Hợp lực nguyên nhân tác động tương hỗ lập trình tiến trình nhằm cho phép chúng tham gia vào hành động chung Sự tương tranh hợp lực tiến trình địi hỏi phải có trao đổi thơng tin qua lại với Trong hệ thống tập trung, điều thực nhờ thuật toán loại trừ tương hỗ thông qua biến tác động vùng nhớ chung Trong hệ tin học phân tán, thông tin cần trao đổi thông qua thông điệp kênh viễn thông GV hướng dẫn: PGS TS Trần Văn Sơn Trang 8/30 Lập trình Mạng nâng cao Tiểu luận Mơn học Một hoạt động gắn bó chương trình cung cấp phân tán quản lý tập hợp tài nguyên đạt tuân thủ qui tắc sau: STT Qui tắc Các cung cấp bắt buộc phải thực giải thuật Các cung cấp nhận tất thông điệp phát từ tiến trình Các thơng điệp phải xử lý trật tự chương trình cung cấp Qui tắc cuối, nhấn mạnh đến thiết yếu phải có trật tự tập hợp thơng điệp hệ Trật tự thực thông qua việc hợp lực tiến trình cung cấp Ở phần sau nghiên cứu số phương pháp xếp nhằm xác lập trật tự đảm bảo cho yêu cầu đồng hóa II.1.2 Vấn đề gắn bó liệu Gắn bó liệu q trình thực trao đổi thông tin qua lại với vào thời điểm t giá trị tiến trình phải giống Để hiểu rõ gắn bó liệu ta xét tốn bãi đỗ xe sau: BV VT VT VT VT VT BV VT BV VT VT VT VT VT VT VT VT VT VT VT BV VT VT VT BV VT BV Trong đó: BV: Người bảo vệ có nhiệm vụ phân phối chổ cho xe tơ VT: Vị trí cho xe ô tô cụ thể Các mũi tên hai chiều sử dụng để mơ tả dịng vào Trong tốn nhận thấy : • Bãi đậu xe tài nguyên GV hướng dẫn: PGS TS Trần Văn Sơn Trang 9/30 Tiểu luận Môn học Lập trình Mạng nâng cao • Xe tiến trình • Nếu cửa tập trung cịn nhiều diến tranh chấp  Tình thứ 1: Ta giả sử bãi để xe ô tô loại bãi lớn có cổng vào kiểm soát người bảo vệ (NBV) NBV biết phần trạng thái bãi để xe Trong nghĩ bãi để xe bị đầy, lại có nhiều lái xe cho xe chạy cổng Vì suy nghĩ vây, trường hợp này, không giải cho xe khác tiếp tục vào bãi nữa, lúc bãi có chổ trống, vậy, NBV khơng nắm trạng thái hành bãi  Tình thứ 2: - Nếu ta có bãi để xe có nhiều cổng vào cổng có người bảo vệ người bảo vệ biết trạng thái với độ trễ định điều đãn đến tình thứ Đó tình có nhiều trung tâm định hình vẽ - Trên thực tế người bảo vệ tin khơng cịn chỗ trống nữa, người bảo vệ khác lại vừa cho khỏi bãi số xe mà chưa kịp báo cho người bảo vệ khác Cũng diễn trường hợp lúc người bảo vệ giải xe vào vị trí bãi họ thiếu thơng tin - Như người bảo vệ phải hợp lực với để phân phối xác chổ bãi, đặc biệt số lượng chổ trống vai trị hợp lực cịn quan trọng Đây khơng gắn bó liệu bãi đậu xe ô tô - Để hiểu rõ vấn đề đồng hố ta xét ví dụ cụ thể sau : Giả sử thời điểm cho trước ta có ngưịi bảo vệ có 100 chỗ cịn trống Tất người bảo vệ có thơng tin Trạng thái lúc hệ gắn bó Ba số họ phát thông tin sau : GV hướng dẫn: PGS TS Trần Văn Sơn Trang 10/30 Lập trình Mạng nâng cao Tiểu luận Mơn học Sơ đồ “có trước”: P p1 p2 Q q1 q2 R r1 r2 q3 p3 p4 q4 q5 r3 r4 q6 • a → b : từ a đến b theo sơ đồ cách di chuyển phía trước theo thời gian dọc theo đường tiến trình thơng điệp Ví dụ : p1 → r4 (a tác động nhân đến b) • Hai kiện hợp lực chúng có tác động nhân với Ví dụ : p3 q3 hợp lực Cho dù q3 xảy thời điểm vật lý sớm p3 , tiến trình P khơng biết tiến trình Q làm thời điểm q3 nhận thơng điệp thời điểm p4 II.2.3 Gắn thời gian logic với kiện Các đồng hồ lôgic: gán số cho kiện cục Hệ thống đồng hồ lôgic phải xác : Điều kiện đồng hồ : ∀ kiện a,b : a → b C(a) < C(b) Để thực thi đồng hồ thỏa mãn Điều kiện Đồng hồ, ta áp dụng thuật tốn đóng dấu thời gian II.3.Đồng hóa theo trật tự tổng quát chặt chẽ GV hướng dẫn: PGS TS Trần Văn Sơn Trang 16/30 Lập trình Mạng nâng cao Tiểu luận Môn học Trong hệ thống tập trung, loại tài nguyên quản lý chương trình cung cấp Chương trình tiếp nhận tất yêu cầu, khuyến nghị giải phóng xếp chúng hàng đợi xử lý theo kiểu loại trừ tương hỗ Trong hệ phân tán, chương trình cung cấp nằm trạm tiến trình đề nghị từ trạm khác Các yêu cầu, khuyến nghị giải phóng truyền cho chương trình cung cấp thơng qua hình thức thơng điệp chuyển theo kênh hệ thống viễn thơng Chính vậy, nhu cầu xếp yêu cầu theo trật tự định ln đặt Trật tự phần áp dụng cho số hệ thống, điều có nghĩa số hệ thống gắn bó thơng qua việc xếp kiện theo trật tự quan hệ “có trước” Tuy nhiên có nhiều hệ phân tán kiện trật tự phần, phải cần đến trật tự chặt chẽ (=>) kiện Nếu có thơng điệp đến chương trình cung cấp trật tự đến thể trật tự chặt chẽ Ngước lại, việc xếp chúng phải theo kiểu loại trừ tương hỗ cho hàng đợi cục trạm có chứa chương trình cung cấp Điều chi phép có trật tự chặt chẽ II.3.1 Cấu trúc trật tự tổng quát chặt chẽ Lamport định nghĩa trật tự chặt chẽ dựa quan hệ “có trước”, gán cho trạm số sau sử dụng số để lập trật tự cho kiện không xếp thứ tự quan hệ “có trước”  Trật tự quán kiện phát  Định dạng thông điệp từ Pi : (m, Tm, i)  Tại tiến trình Pi, kiện phát (m, Tm, j) từ Pj gọi có trước kiện phát (n, Tn, k) từ Pk : Nếu Tm < Tn, Nếu Tm = Tn j < k Hình sau minh họa cho dạng thông điệp với trật tự chặt chẽ ⇒ GV hướng dẫn: PGS TS Trần Văn Sơn Trang 17/30 Lập trình Mạng nâng cao Tiểu luận Mơn học P1 (a,1,1) P2 P3 P4 (b,1,4) 2 II.3.2 Giải thuật đóng dấu thời gian Lamport II.3.3 Các ký hiệu: • Một chương trình phân tán tạo thành tập hợp n tiến trình độc lập khơng đồng P1, P2, ,Pn Các tiến trình khơng chia xẻ đồng hồ chung • Mỗi tiến trình xử lý kiện tự động; gửi thơng điệp, khơng phải đợi việc phân phát hồn thành • Việc xử lý tiến trình Pi, sản sinh dãy kiện ei0, ei1, , eix, eix+1, Tập hợp kiện sản sinh bỡi Pi có tổng thứ tự xác định dãy kiện eix  eix+1 Chúng ta nói eix xảy trước eix+1 Quan hệ xảy trước  có tính bắc cầu: eii  eij với i0, thường d=1) R3: Mỗi thông điệp mang giá trị đồng hồ người gửi thời điểm gửi Khi Pi nhận thông điệp với timestamp (thời gian đánh dấu) Cmsg, xử lý sau: Ci = Max(Ci, Cmsg) Xử lý R2 Phát thông điệp Đồng hồ logic tiến trình ngày tăng đơn giản Các thời gian đánh dấu Lamport (Lamport timestamps) GV hướng dẫn: PGS TS Trần Văn Sơn Trang 20/30 Lập trình Mạng nâng cao Tiểu luận Môn học CHƯƠNG III: SỰ GẮN BÓ DỮ LIỆU TRONG CSDL PHÂN TÁN III.1 Tác động giao dịch Các đối tượng khác hệ đối tượng độc lập nhau, chúng quan hệ với tập hợp quan hệ gọi ràng buộc toàn vẹn Các ràng buộc thể sâu sắc đặc tính riêng biệt hệ Trạng thái hệ thoả mãn tập ràng buộc toàn vẹn gọi trạng thái gắn bó Các nhà thiết kế vận hành hệ mong muốn việc thực tiến trình phải trì cho hệ trạng thái gắn bó Để xác hố đặc tính này, cần phải lưu ý trạng thái hệ xác định mức quan sát cho trước Ta quan tâm đến hai mức quan sát: STT Mức NSD Hệ thống Giải thích Tiến trình dãy thực giao dịch Giao dịch chương trình thực từ trạng thái gắn bó dẫn hệ đến trạng thái gắn bó khác Mỗi giao dịch cấu tạo từ nột dãy tác động thể sau Nếu tác động A B thuộc hai giao dịch khác thực hai tiến trình hiệu GV hướng dẫn: PGS TS Trần Văn Sơn Trang 21/30 Lập trình Mạng nâng cao Tiểu luận Môn học ứng tổng quát chúng hiệu ứng dãy (A;B) (B;A) Ở mức hệ thống, ta nói tác động phần tử nhỏ chia cắt Cho tập hợp giao dịch M={T1, T2…, Tn} thực tiến trình độc lập p1, p2,…,pn Việc thực có nghĩa thực tất giao dịch M theo kiểu nối đuôi tuân thủ trật tự Sự gắn bó hệ bảo toàn theo định nghĩa việc thực riêng biệt giao dịch Do vậy, bảo toàn chế độ thực M Nếu lý hiệu quả, nhiều giao dịch thực song song gắn bó khơng cịn đảm bảo Một u cầu khác quan trọng trình thực hệ phải đảm bảo cho tác động không bị ngắt quãng III.2 Trật tự hóa tác động Trở lại với tập hợp giao dịch M = {T1, T2…, Tn} cho phần trước Mỗi giao dịch cấu tạo từ dãy tác động Bằng tác động khơng chia sẻ này, tồn việc thực tập hợp giao dịch M tập hợp tiến trình tương tranh tương đương với việc thực dãy S tác động thuộc giao dịch này, S = (a1, a2, , an) chẳng hạn Trong trật tự tuân thủ trật tự nội giao dịch, dãy bao gồm tất tác động cấu tạo nên giao dịch M; tác động xuất lần Một dãy gọi trật tự hóa tập giao dịch M Ví dụ: Cho T1 = (a11, a12, a13, a14) T2 = (a21, a22, a23) Một trật tự hóa (T1, T2) thể sau: S = a21, a11, a12, a22, a13, a23, a14 Trong số trật tự hóa tập hợp giao dịch, điều quan trọng phải tách cho phục vụ trạng thái gắn bó liệu chúng gọi trật tự hóa gắn bó Như vậy, đặc tính quan trọng trật tự hóa là: trật tự hóa tương ứng với việc thực tập hợp giao dịch hay gọi ngắn gọn trật tự hóa GV hướng dẫn: PGS TS Trần Văn Sơn Trang 22/30 Lập trình Mạng nâng cao Tiểu luận Mơn học Điều kiện đủ cho gắn bó trật tự hóa phát biểu sau: Một trật tự hóa gắn bó, có quan hệ phụ thuộc với trật tự tuần hoàn III.3 Triển khai giao dịch tơn trọng gắn bó Cho tập hợp giao dịch M={T1, T2…, Tn} Một trật tự hóa tập hợp tác động thành phần tương ứng với việc thực hoàn toàn giao dịch Việc thu trật tự hóa gắn bó thành cơng áp dụng ràng buộc trật tự thực tác động Nguyên lý phương pháp chỗ làm chậm tác động thời điểm mà thực khơng cịn có nguy phá hủy gắn bó trật tự hóa (bằng cách chặn tiến trình hành) Để đảm bảo giao dịch tơn trọng gắn bó thơng tin người ta đưa phương pháp, chế để đảm bảo giao dịch có gắn bó thơng tin tồn vẹn liệu sở liệu phân tán là: • Cơ chế then cài: Cho phép giao dịch giải phóng đối tượng mà cài then • Loại trừ tương hỗ: Nếu ta biết trước đối tượng xử lý giao dịch đó, ta cài then công việc truy cập đến đối tượng • Then cài lựa chọn đối tượng: Một giao dịch thay đổi giá trị đối tượng phải loại trừ tất đối tượng khác muốn truy cập, ngược lại việc truy cập tiến hành theo kiểu tương tranh • Giao dịch hai pha: Tồn đối tượng bị cài then tình trạng cài then cuối giao dịch Không có then cài diễn then cài khác giao dịch Bây ta tưởng tượng đối tượng phân tán nhiều trạm khác nối với thông qua hệ thống viễn thông tiến trình diễn trạm khác Hệ thống viễn thơng cho phép tiến trình trạm khác trao đổi thơng điệp với Ta giả định tiến trình phương tiện truyền thơng đối tượng rơi vào cố Một hệ quản lý tập hợp thông tin phân tán bao gồm: STT GV hướng dẫn: PGS TS Trần Văn Sơn Cơ chế Trang 23/30 Lập trình Mạng nâng cao Tiểu luận Mơn học Cơ chế cho phép xếp cách tổng quát tác động giao dịch, tác động diễn trạm khác Cơ chế điều khiển tranh chấp truy cập cục vào đối tượng đảm bảo tơn trọng tính tồn vẹn đối tượng truy cập cục Cơ chế có khả xử lý bế tắc thiếu thốn vô hạn, hậu việc hủy bỏ giao dịch Cơ chế phục hồi giao dịch hủy bỏ hay xử lý cố Cơ chế xử lý cố STT Phải thực Giao dịch T bắt buộc phải thực cách trọn vẹn Nếu có cố xảy phải quay lại điểm xuất phát Muốn thực điều vừa nêu trên, người ta địi hỏi giao dịch phải có đặc tính tồn vẹn sau: STT Phải thực Nếu tiến trình bị cố trước kết thúc T lại sau thao tác thay đổi cần thiết T, trạng thái hệ gắn bó Nếu tiến trình bị cố trước diễn thay đổi T, trạng hái hệ gắn bó Nếu tiến trình bị cố thay đổi T, trạng thái hệ khơng gắn bó Nếu dữ liệu được phân tán nhiều server, để bảo đảm dữ liệu sẽ được ghi lên đúng đắn lên mọi sở dữ liệu, đòi hỏi phải có các chế bảo vệ dữ liệu Ví dụ việc cập nhật bảng cân đối tài khoản khách hàng ở ba sở dữ liệu khác Nếu có sự cố kết nối xảy thời gian ghi giao dịch, sở dữ liệu sẽ mất tính đồng bộ Xử lý giao dịch khắc phục tình trạng bằng cách giám sát những thay đổi tác động lên các sở dữ liệu liên quan nhằm bảo đảm toàn vẹn dữ liệu một có sự cố III.4 Quản lý gắn bó giao dịch Bây ta xem xét hệ, đối tượng phân tán nhiều trạm, khơng có đối tượng tồn có Một giao dịch Tj GV hướng dẫn: PGS TS Trần Văn Sơn Trang 24/30 Tiểu luận Mơn học Lập trình Mạng nâng cao tham chiếu đến đối tượng nằm trạm khác gồm nhiều tác động thực nhiều trạm Như ta phải xác định trạm Si tiến trình Pji với nhiệm vụ thực tác động giao dịch Tj Si, tác động thực trạm khác tiến hành theo kiểu song song Các phương pháp để quản lý gắn bó giao dịch như: Phương pháp dự phòng để chống bế tắc, phương pháp dựa vào việc hạn chế khả diễn cách phát bế tắc có tính chất động, điều dẫn đến hủy bỏ giao dịch GV hướng dẫn: PGS TS Trần Văn Sơn Trang 25/30 Lập trình Mạng nâng cao Tiểu luận Môn học PHẦN BÀI TẬP Vấn đề: Ta triển khai công tơ kiện phân tán N Server (N≥2) Giả sử thời gian đầu trạm hoạt động ổn định ta cài đặt trạm công tơ kiện cục Hãy cho biết làm trạm có giá trị "ảnh" cơng tơ kiện trạm Giải: Công tơ kiện chế đồng sử dụng biến trạng thái nguyên không lùi cho phép sử dụng gần Mỗi công tơ, biến nguyên không lùi, kết hợp với nhóm đặc biệt kiện Trên cơng tơ sự kiện phối hợp với nhóm đặc biệt kiện E xác định hàm nguyên thuỷ Increase(E) : Tăng nội dung công tơ lên đơn vị có nghĩa kiện nhóm E đến Query(E) : Cung cấp giá trị hành công tơ phối hợp với E Wait(E, n) : Treo tiến trình chừng giá trị cơng tơ cịn nhỏ n Send(S) : gửi thông điệp đến trạm S Receive(S) : nhận thông điệp từ trạm S Ta trở lại xét toán người sản xuất- người tiêu dùng Trong toán ta xét hai trạm trạm sản xuất, ký hiệu PS trạm tiêu thụ, ký hiệu CS - Ta gọi NP số lượng sản phẩm sản xuất trạm sản xuất PS NC số lượng sản phẩm trạm CS tiêu thụ - Tại trạm sản xuất PS ta đặt thêm công tơ NC’ Trạm PS tăng giá trị công tơ kiện NC’ thêm đơn vị nhận thông điệp từ trạm CS thông báo cho biết tiêu thụ thêm sản phẩm - Tương tự, trạm CS ta đặt công tơ NP’ Giá trị công tơ kiện NP’ tăng lên đơn vị trạm CS nhận thông điệp từ trạm PS thông báo có sản phẩm vừa sản xuất - Tại trạm CS, nhận thông điệp từ trạm PS thơng báo có sản phẩm vừa sản xuất (receive(PS)), trạm CS tăng giá trị công tơ kiện NP’ thêm đơn vị (Increase(NP’)) GV hướng dẫn: PGS TS Trần Văn Sơn Trang 26/30 Lập trình Mạng nâng cao Tiểu luận Môn học - Sau lần tiêu thụ sản phẩm, trạm CS tăng biến NC thêm đơn vị (NC=NC+1) gửi thông điệp thông báo cho trạm PS biết có sản phẩm vừa tiêu thụ (send(PS)) - Sau nhận thông báo từ trạm CS (receive(CS)), trạm sản xuất PS tăng giá trị công tơ kiện NC’ thêm đơn vị (Increase(NC’)) - Như vậy, ta đặt trạm công tơ kiện cục Để trạm có giá trị “ảnh” cơng tơ kiện trạm ta dựa hệ thống nhiều cho phép đăng ký từ xa Hệ thống cục có lưu trữ tất thông tin liên quan tất hệ cục cách gửi nhận thông điệp Khi trạm bị cố: - Một trạm hoạt động xảy nhiều cố, cố truyền thơng, cố giao dịch, cố phần mềm hay phần cứng, Để trạm bị cố xảy khơng ảnh hưởng đến trạm khác thiết lập trạng thái sau khắc phục để đưa vào mạng ta nên dùng tệp nhật ký Nhật ký công cụ dùng để chống lại tình trạng liệu xảy cố hệ thống Nhật ký ghi chép thay đổi thực tình trạng giao dịch - Nếu vị trí M phát N bị cố, M ghi kiện vào nhật ký Khi n khơi phục, gủi thơng báo đến vị trí Nếu M nhận thơng báo này, xem lại nhật ký tìm lại điểm N gặp cố gửi giá trị mục chung M N cho N - Đồng thời trạm bị cố, mạng cần phải gửi thông điệp vang_mat(vắng) cho trạm lại Và trạm vào lại mạng sau có cố khắc phục phải phát thơng điệp vao_lai để kiến tạo lại trạng thái hành Chương trình: a) Xây dựng hệ thống phân tán server thể khả phát/nhận thông điệp b) Xây dựng giải pháp kỹ thuật tăng số gia c) Viết chương trình Java Các file BATCH Compile.bat @echo off GV hướng dẫn: PGS TS Trần Văn Sơn Trang 27/30 Lập trình Mạng nâng cao Tiểu luận Môn học Cls Del *.class Echo Compiling Files !!! javac *.java Echo Compilingimpl Files !!! PAUSE server1.bat @echo off echo 'This is Server1' java SetServer 60 server2.bat @echo off echo 'This is Server2' java SetServer 70 GV hướng dẫn: PGS TS Trần Văn Sơn server3.bat @echo off echo 'This is Server3' java SetServer 80 Trang 28/30 Lập trình Mạng nâng cao Tiểu luận Môn học KẾT LUẬN Do lần làm quen với ngôn ngữ Java nên việc lập trình cịn nhiều bỡ ngỡ Tuy nhiên, giúp đỡ Thầy giáo bạn, với nỗ lực thân nên đề tài đạt số kết đáng kể sau: Nắm vững nguyên tắc hoạt động đa server Nắm vững kiến thức liên quan đến hệ phân tán lập trình mạng sở Java Cài đặt toán thể đa server phát nhận thơng điệp tính tốn giá trị cơng tơ kiện phân tán server Đảm bảo yêu cầu đặt tóan Càng đọc, nghiên cứu Java thấy hay, riêng mà Java mang lại Rất mong thời gian đến Thầy, bạn giúp đỡ thêm để thân nắm vững cách thực thuật tóan ngơn ngữ Java Xin chân thành cám ơn GV hướng dẫn: PGS TS Trần Văn Sơn Trang 29/30 Lập trình Mạng nâng cao Tiểu luận Môn học TÀI LIỆU THAM KHẢO TS.Lê Văn Sơn, Hệ tin học phân tán, nhà xuất Đại học quốc gia Tp Hồ Chí Minh, 2002 Trần Tiến Dũng, Giáo trình lý thuyết tập Java, nhà xuất Giáo dục,1999 Tài liệu Internet GV hướng dẫn: PGS TS Trần Văn Sơn Trang 30/30 .. .Tiểu lu? ?n M? ?n học Lập trình Mạng n? ?ng cao TRI? ?N KHAI CÔNG TƠ SỰ KI? ?N PH? ?N T? ?N TR? ?N N SERVER (N> =2) VÀ XÁC ĐỊNH GIÁ TRỊ ? ?ẢNH? ?? CỦA CÁC CÔNG TƠ SỰ KI? ?N TR? ?N MỖI TRẠM Giáo vi? ?n hướng... 25/30 Lập trình Mạng n? ?ng cao Tiểu lu? ?n M? ?n học PH? ?N BÀI TẬP V? ?n đề: Ta tri? ?n khai công tơ ki? ?n ph? ?n t? ?n N Server (N? ??2) Giả sử thời gian đầu trạm hoạt động ? ?n định ta cài đặt trạm công tơ ki? ?n cục... chương trình cho biết giá trị ? ?ảnh? ?? cơng tơ GV hướng d? ?n: PGS TS Tr? ?n V? ?n S? ?n Trang 4/30 Lập trình Mạng n? ?ng cao Tiểu lu? ?n M? ?n học CHƯƠNG I: TỔNG QUAN VỀ HỆ PH? ?N T? ?N VÀ LẬP TRÌNH MẠNG I.1 Hệ thống

Ngày đăng: 31/01/2015, 22:54

Từ khóa liên quan

Mục lục

  • CHƯƠNG I: TỔNG QUAN VỀ HỆ PHÂN TÁN VÀ LẬP TRÌNH MẠNG

    • I.1. Hệ thống tin học

    • I.2. Hệ tin học phân tán

    • I.3. Các mô hình hệ phân tán và ứng dụng mạng

    • I.4. Kiến trúc hệ thống

      • I.4.1. Mô hình Client/Server

      • I.4.2. Mô hình tương tác trong hệ phân tán

      • CHƯƠNG II: ĐỒNG BỘ HÓA TRONG HỆ PHÂN TÁN

        • II.1. Đồng bộ hóa tiến trình

          • II.1.1. Vấn đề tương tranh và hợp lực

          • II.1.2. Vấn đề gắn bó dữ liệu

          • II.1.3. Trật tự từng phần

          • II.1.4. Giả định các điều kiện chung

          • II.1.5. Trật tự tổng quát chặt chẽ

          • II.2. Sắp xếp kiểu đóng dấu

            • II.2.1. Đồng hồ logic

            • II.2.2. Minh họa trật tự từng phần

            • II.2.3. Gắn thời gian logic với các sự kiện

            • II.3. Đồng bộ hóa theo trật tự tổng quát chặt chẽ

              • II.3.1. Cấu trúc trật tự tổng quát chặt chẽ

              • II.3.2. Giải thuật đóng dấu thời gian của Lamport

              • II.3.3. Các ký hiệu:

              • II.3.4. Những điều kiện đồng hồ:

              • II.3.5. Thuật toán Lamport – Tính giá trị đồng hồ logic

              • CHƯƠNG III: SỰ GẮN BÓ DỮ LIỆU TRONG CSDL PHÂN TÁN

                • III.1. Tác động và giao dịch

                • III.2. Trật tự hóa các tác động

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

Tài liệu liên quan