Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 103 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
103
Dung lượng
1,01 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI PHAN LÊ TUẤN TỐI ƯU HÓA ỨNG DỤNG NGÂN HÀNG TRÊN NỀN HỆ THỐNG PHÂN TÁN LUẬN VĂN THẠC SĨ NGÀNH ĐIỆN TỬ VIỄN THÔNG Hà Nội, 2006 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI PHAN LÊ TUẤN TỐI ƯU HÓA ỨNG DỤNG NGÂN HÀNG TRÊN NỀN HỆ THỐNG PHÂN TÁN LUẬN VĂN THẠC SĨ NGÀNH ĐIỆN TỬ VIỄN THÔNG NGƯỜI HƯỚNG DẪN : TS.NGUYỄN CHẤN HÙNG Hà Nội, 2006 MỤC LỤC Trang Mục lục Viết tắt Tóm tắt Abstract MỞ ĐẦU Chương I - Tổng quan hệ thống tính tốn phân tán 1.1 Lịch sử phát triển hệ thống phân tán 1.1.1 Các nguyên lí phần cứng 1.1.2 Các nguyên lí phần mềm 1.2 Truyền thông hệ thống phân tán 1.2.1 Các giao thức phân lớp 1.2.2 Các mạng ATM 1.2.3 Mơ hình client/server 1.3 Đồng hệ thống phân tán 12 1.3.1 Đồng đồng hồ 13 1.3.2 Vấn đề xung đột tiến trình 16 1.3.3 Các giải thuật lựa chọn 19 1.3.4 Các giao dịch nguyên tử 22 1.3.5 Deadlocks hệ thống phân tán 25 1.4 Các tiến trình xử lí hệ thống phân tán 27 1.4.1 Threads 27 1.4.2 Các mơ hình hệ thống 28 1.4.3 Phân bổ xử lí 30 1.4.4 Scheduling hệ thống phân tán 31 1.4.5 Khả chịu lỗi 33 1.4.6 Các hệ thống phân tán thời gian thực 33 1.5 Hệ thống file phân tán 38 1.5.1 Giao diện file service 38 1.5.2 Giao diện Directory Server 39 1.5.3 Chia sẻ file 39 1.5.4 Caching 42 1.5.5 Tính tồn vẹn cache 45 1.5.6 Replication 46 1.5.7 Các giao thức cập nhật 48 1.5.8 Các xu hướng phát triển hệ thống file phân tán 50 1.6 Bộ nhớ chia sẻ phân tán 51 1.6.1 Giới thiệu 52 1.6.2 Bộ nhớ chia sẻ 53 1.6.3 Các mơ hình tồn vẹn 63 1.6.4 Bộ nhớ chia sẻ phân tán page-based 64 1.6.5 Bộ nhớ chia sẻ phân tán chia sẻ biến 73 1.6.6 Bộ nhớ chia sẻ phân tán object-based 73 Chương II - Hệ thống core banking 76 2.1 Giới thiệu 76 2.1.1 Cấu hình máy chủ điểm toán 76 2.1.2 Phần truyền thông 77 2.2 Các ứng dụng chạy hệ thống core banking 78 2.2.1 Hệ thống bù trừ liên ngân hàng 78 2.2.2 Hệ thống xử lí tài khoản tốn 79 Chương III-Mơ hình high-performance cho hệ thống core banking 81 3.1 Kiến trúc high-performance 81 3.1.1 Mơ hình tham khảo cho kiến trúc Client/Server 81 3.1.2 Các thành phần cấu trúc hệ thống phân tán 83 3.1.3 Kiến trúc three-tier client/server thực tế 84 3.1.4 Các đường truyền thông 85 3.1.5 Ý nghĩa high-performance 85 3.2 Thiết kế hệ thống high-performance 86 3.2.1 Thiết kế hệ thống thời gian thực 86 3.2.2 Thiết kế ứng dụng phân tán 87 3.2.3 Mơ hình thời gian phản hồi tham chiếu 91 Kết luận kiến nghị Tài liệu tham khảo -Chương I TỔNG QUAN VỀ HỆ THỐNG TÍNH TỐN PHÂN TÁN 1.1 Lịch sử phát triển hệ thống phân tán: Kỉ nguyên phát triển máy tính đại năm 1945, năm 1985, máy tính có kích thước lớn đắt tiền Bắt đầu từ năm 1980, có hai thành tựu cơng nghệ làm thay đổi hồn tồn mặt cơng nghệ máy tính Đầu tiên đời phát triển vi xử lí mạnh có giá thành thấp xử lí cũ, 8-bit, 16-bit, 32-bit, 64-bit Thứ hai phát minh mạng máy tính tốc độ cao Các mạng LAN cho phép hàng chục chí hàng trăm thiết bị nối với để trao đổi liệu mà khoảng thời gian cỡ mili giây Các mạng WAN cho phép hàng triệu thiết bị giới kết nối với tốc độ từ 64kbps đến hàng Gbps Kết là, thiết bị khác nối với qua mạng tốc độ cao để hình thành hệ thống tính tốn bao gồm nhiều CPU Chúng gọi hệ thống phân tán để phân biệt với hệ thống tính tốn tập trung trước bao gồm CPU đơn, với memory, thiết bị ngoại vi số terminal Ưu điểm hệ thống phân tán so với hệ thống tập trung: - Đạt tỉ lệ giá/performance cao - Độ tin cậy cao hơn, nhờ khả phân bổ workload đến máy tính mạng - Khả mở rộng hệ thống mềm dẻo - Tốc độ tính tốn cao hơn, tổng lực tính tốn tất thiết bị mạng Nhược điểm: -Phan Lê Tuấn Luận văn cao häc Các phần mềm, hệ điều hành, ngôn ngữ lập trình, ứng dụng phải thiết kế, thực cách tương thích với hệ thống phân tán - Phụ thuộc vào chất lượng mạng truyền thông - Vấn đề bảo mật thông tin dùng chung 1.1.1 Các nguyên lý phần cứng: Vì hệ thống phân tán bao gồm nhiều CPU, nên có nhiều cách khác để liên kết trao đổi tin chúng Người ta chia máy tính loại nhiều luồng lệnh, nhiều luồng liệu (multiple instruction stream, multiple data stream-MIMD) thành nhóm: nhóm chia sẻ nhớ gọi multiprocessor, cịn nhóm khơng chia sẻ nhớ gọi multicomputers Hình 1.1: Phân loại hệ thống tính toán phân tán Bus-Based Multiprocessors: Hệ thống Bus-based multiprocessors bao gồm số CPU nối với qua bus chung tới nhớ Vì có nhớ nên CPU A ghi từ vào nhớ CPU B đọc từ sau vài mili giây đọc giá trị mà -Phan Lê Tuấn Luận văn cao học -CPU A vừa ghi, nhớ có tính gọi có thuộc tính coherent Để tránh tình trạng q tải bus có nhiều CPU chia sẻ nhớ, người ta dùng nhớ cache tốc độ cao nằm CPU bus, vùng nhớ chứa thông tin vừa truy suất Mọi yêu cầu truy suất nhớ thông qua cache để từ nhớ cần truy suất nằm cache, phản hồi cho CPU mà không cần phải truy suất đến nhớ thật Nếu cache đủ lớn xác suất có từ nhớ cache, cịn gọi hit rate, cao, làm giảm lưu lượng bus Để đảm bảo tính tồn vẹn cache, nhớ cache thiết kế để từ nhớ ghi vào cache đồng thời ghi tới nhớ chung, nhớ cache có tính chất gọi write-through cache Ngồi cịn có snooping cache, loại ln giám sát bus, để có u cầu ghi lên từ nhớ có cache mà bus bận xố từ nhớ khỏi cache, cịn bus rỗi cập nhật giá trị vào nhớ Switched Multiprocessors: Với multiprocessor có nhiều 64 xử lí, người ta chia nhớ thành module nối chúng với CPU thơng qua crossbar switch Hình 1.2: Chuyển mạch nhiều xử lí Bus-Based Multicomputers: -Phan Lê Tuấn Luận văn cao học -Mỗi CPU có liên kết đến thẳng nhớ local riêng nó, vấn đề lại CPU liên kết với Do lưu lượng liệu đường kết nối CPU thấp so với kiến trúc multiprocessor nên tốc độ bus không thiết phải cao, thường từ 10-100Mbps Hình 1.3: Bus-based multiprocessor Switched Multicomputers: Bao gồm nhiều máy tính kết nối kiểu chuyển mạch với 1.1.2 Các nguyên lý phần mềm: Các hệ điều hành mạng: Hệ điều hành mạng dùng để quản lí workstation, file server kết nối chúng Đây dạng đơn giản để kết nối hệ thống phần cứng lại với Các ứng dụng chạy riêng biệt máy trao đổi thông tin với cần thiết thơng qua máy chủ quản lí file gọi file server Các hệ thống chia sẻ thời gian multiprocessor: Đặc tính quan trọng loại hệ thống tồn queue, danh sách tiến trình hệ thống sẵn sàng để chạy Queue cấu trúc liệu nằm nhớ Ví dụ: có CPU tiến trình sẵn sàng để chạy, tiến trình đặt nhớ chia sẻ số chạy, tiến trình A CPU1, tiến trình B CPU2, tiến trình C CPU3 Hai tiến trình cịn lại, C D nằm nhớ, chờ đến lượt để chạy -Phan Lª Tuấn Luận văn cao học Hình 1.4: Multiprocessor với hàng đợi 1.2 Truyền thông hệ thống phân tán: Sự khác biệt lớn hệ thống phân tán hệ thống đơn xử lí vấn đề thơng tin tiến trình Trong hệ thống uniprocessor, hầu hết việc truyền thông 1.2.1 Các giao thức phân lớp: Điển hình giao thức phân lớp OSI quen thuộc 1.2.2 Các mạng ATM: Thông tin cần truyền chia nhỏ thành tế bào (cell) (53byte), sau thực tối ưu hố cho việc truyền gói có kích thước cố định Đặc điểm mạng ATM tốc độ chuyển mạch nhanh 1.2.3 Mơ hình Client/Server: Như phân tích, mạng ATM có ưu điểm mặt kĩ thuật giá thành cao, nên thực tế, mơ hình giao thức phân lớp OSI sử dụng cho ứng dụng phân tán Vấn đề cần giải việc thêm header lớp làm tăng dung lượng gói tin truyền mạng Mỗi message gửi đi, xử lí nhiều lớp, lớp tạo thêm header ứng với lớp, tách phía nhận Cơng việc tốn nhiều thời gian -Phan Lê Tuấn Luận văn cao học 84 Hình 3.2: Optimal architecture for enterprise client/server - Content: Để phối hợp dịch vụ phối hợp quản lí thơng tin Trước đơn giản data database, bao gồm các nguồn tài nguyên khác 3.1.3 Kiến trúc three-tier client/server thực tế: Nếu triển khai ứng dụng theo mơ trên, performance Yêu cầu data consumer phải chuyển qua lớp transport để tới lớp content, thực tế, lớp transport mạng WAN, tương đối chậm Trong thực tế, cấu trúc tối ưu để có high performance bao gồm quan hệ lớp logic vật lí hình 3.3: -Phan Lê Tuấn Luận văn cao học 85 Hình 3.3: Logical and physical layering in practice Theo đó, để xây dựng hệ thống làm việc hiệu môi trường phân tán, ta cần thiết kế ứng dụng có kiến trúc thoả mãn: - Phần quản lí hiển thị tập trung workstation, số chức thực workgroup server - Phần quản lí application workflow nằm workgroup server số chức thực enterprise server - Phần quản lí data trải rộng tier trách nhiệm chủ yếu chia sẻ server workgroup enterprise 3.1.4 Các đường truyền thông: Các ứng dụng triển khai dựa cấu trúc cần phải phối hợp hoạt động loại thơng tin tiến trình với Sau ví dụ, hình 3.4: -Phan Lê Tuấn Luận văn cao học 86 Hình 3.4: Communication paths in distributed applications Ta phân loại đường thơng tin thành nhóm sau: Trong chức tier (1-1, 2-2,…) Trong tier, chức (1-2, 2-3, 4-5, 5-6, 8-9) Trong chức năng, tier liền kề (1-4, 2-5, 5-8, 3-6, 6-9) Giữa chức tier liền kề (1-5, 4-8, 5-9) Giữa tier xa (1-8, 3-9) Ví dụ đơn giản, kết nối 4-6 ứng dụng Web thành phần trình diễn giao tiếp trực tiếp với phần quản lí data local server 3.1.5 Ý nghĩa performance: Để tối ưu hoá performance, ta áp dụng nguyên tắc sau: Tối thiểu hoá số lượng kết nối tier, đặc biệt thông qua mạng WAN Hạn chế kết nối đồng tới kết nối có tốc độ nhanh tier tier nối với mạng tốc độ cao -Phan Lê Tuấn Luận văn cao học 87 -3 Với kết nối tốc độ thấp, cần sử dụng kết nối cận đồng kết hợp với kĩ thuật thiết kế nhằm hạn chế trễ xử lí trễ truyền thơng tổng thời gian phản hồi người dùng 3.2 Thiết kế hệ thống high performance: Các nguyên lý kiến trúc thiết kế cho ta nhiều lựa chọn thiết kế, vấn đề ta chọn kiến trúc cho phù hợp với yêu cầu người sử dụng Core banking hệ thống thời gian thực, nên vấn đề performance hệ thống hệ thống thời gian thực 3.2.1 Thiết kế hệ thống thời gian thực: Một hệ thống thông tin kinh tế tốt phải thiết kế theo kiểu thời gian thực Các hệ thống thời gian thực phải ln chạy nhanh (hoặc nhanh hơn) tiến trình khác mà chúng hỗ trợ Ví dụ: - Người dùng đọc, sử dụng cập nhật thông tin Các máy tính cung cấp thơng tin chia sẻ cách đọc cập nhật sở liệu Hệ thống máy tính lưu thơng tin quan trọng nhiều địa điểm khác sẵn sàng cho user sử dụng - Một số ứng dụng high-performance cần có tốc độ truy suất cao tới liệu xa Trong trường hợp này, thành phần đường truyền thông từ client tới server xa thiết kế giám sát cách đặc biệt để đảm bảo cung cấp ứng dụng Khi client workstation phải chờ tiến trình node khác mạng xử lí xong, khơng workstation hoạt động khơng hiệu mà user tốn thời gian cách vơ ích - Với hầu hết mục tiêu kinh doanh, thông tin cung cấp cho người dùng không thiết phải tức thời Một số thơng tin khơng cập nhật thời gian vài giây, vài phút hàng Một số -Phan Lª TuÊn LuËn văn cao học 88 -thơng tin mang tính tổng kết Người dùng cần biết thơng tin cập nhật đến thời điểm - Hệ thống máy tính phải giữ cho tất thông tin quán với 3.2.2 Thiết kế ứng dụng phân tán: Sau lựa chọn đưa tiêu ứng dụng core banking hệ thống thời gian thực ta xem xét khía cạnh vấn đề thiết kế 3.2.2.1 Thiết kế tảng ứng dụng: Khi thiết kế ứng dụng phân tán nói riêng core banking nói chung, cần phải thực cân với mục tiêu toàn cục khác hệ thống: - Cần có phản hồi khác hệ thống workload cụ thể - Cần tối ưu hoá thơng lượng tồn hệ thống với tài ngun cho trước - Chi phí thực giải pháp - Thời gian triển khai giải pháp Các vấn đề kĩ thuật: a) Tạo cân tài ngun tính tốn: Các tài ngun tính tốn không phối hợp sử dụng tốt sinh "nút cổ chai" (bottle necks), người ta thường thực trao đổi tài nguyên cách dùng dư thừa tài nguyên đó, cải thiện thông lượng thời gian phản hồi toàn hệ thống b) Thực giảm thời gian trễ cách sử dụng nguồn tài nguyên nhanh hơn, đặc biệt sử dụng disk storage lớp mạng I/O, thêm xử lí disk I/O, thêm nhớ (cache) xử lí c) Thực phân bổ cụ thể ứng dụng ứng với tài nguyên thông qua ma trận ứng dụng-tài nguyên -Phan Lê Tuấn Luận văn cao häc 89 3.2.2.2 Phân tán tài nguyên thông tin Vấn đề phân bố liệu hệ thống phải đảm bảo cân yếu tố sau: Các bảng liệu liên quan đến phải sử dụng Các bảng quan trọng cần lưu để đảm bảo tính an tồn Đảm bảo khả lưu trữ lực xử lí vị trí đặt liệu Xác định mức độ sử dụng liệu để thực chia sẻ, ưu tiên thực chia sẻ mạng LAN, hạn chế chia sẻ mạng WAN Do thực chia nhỏ liệu đến mức nhỏ (cỡ hàng cột bảng liệu) để tối ưu hoá việc chia sẻ Thực cập nhật liệu theo chế nhiều pha: Để tránh cập nhật nhiều vị trí giao dịch, người ta sử dụng chế cập nhật cận đồng nhiều pha hình 3.5: Hình 3.5: Cập nhật nhiều pha cận đồng -Phan Lê Tuấn Luận văn cao häc 90 -Pha 1: Cập nhật: Các cập nhật trước hết ghi lại node nội bộ, hoạt động cache cập nhật Pha 2: Thu thập, cập nhật chuyển đến server trung tâm nơi chứa chính, có nhiều phương pháp thực việc gửi thông điệp cập nhật theo lô, sử dụng phần mềm tạo hệ quản trị sở liệu Pha 3: Tập hợp lại, cập nhật cập nhật vào máy chủ Pha 4: Phát tán sao, sau cập nhật, phát tán toàn hệ thống Pha 5: Apply, cập nhật apply vào phần liệu nằm máy nội Vấn đề toàn vẹn liệu: Khi liệu nằm phân tán, ta giải vấn đề toàn vẹn liệu cách sử dụng chế locking mô tả chương I Nếu cập nhật theo lơ (batching) cần xem xét thêm thời gian xử lí tuỳ thuộc vào tảng truyền thông hệ thống 3.2.2.4 Phương pháp liên kết tiến trình với liệu: Ta sử dụng kĩ thuật truy cập liệu sau đây: Lưu liệu máy chủ nội tạo cần, việc tạo sử dụng chế caching tĩnh xác định trước Sử dụng có chế caching động để thu nội liệu dùng thường xuyên nằm máy khác Thực tiến trinh xử lí máy chứa liệu xa -Phan Lê Tuấn Luận văn cao häc 91 -4 Sử dụng chế nhiều pha để lấy lượng liệu cần thiết tối thiểu để khởi động lại tiến trình máy gửi yêu cầu Sử dụng middleware để tập hợp truy cập liệu từ xa 3.2.2.5 Thiết kế luồng ứng dụng: Vấn đề việc thiết kế luồng ứng dụng phương pháp chia nhỏ ứng dụng thành thành phần nhỏ Sau chia nhỏ ứng dụng thành thành phần nhỏ ta thiết kế lại ứng dụng mức vật lí hệ thống khơng thể giải vấn đề việc thiết kế tầng ứng dụng để lại Thiết kế ứng dụng nhiều pha: Các ứng dụng phân tán bao gồm tiến trình thơng điệp, để thiết kế ứng dụng phân tán ta phải xác định hoạt động tiến trình, thơng điệp đường thơng điệp Đặc tính tiến trình: - Repeatable hay khơng repeatable: tiến trình có đặc tính repeatable tiến trình người dùng (hoặc tiến trình khác) khơng thể làm ảnh hưởng đến tài nguyên quan trọng - Updating hay nonupdating: khả thay đổi liệu hay khơng tiến trình - Visible hay invisible: thực cập nhật liên tiếp lên thành phần liệu đơn xẩy trường hợp cập nhật sau không khả dụng với tiến trình khác, vấn đề đặc biệt có ý nghĩa thực tạo batching replication - Revocable hay irrevocable: Đây khả khơi phục hoạt động tiến trình có lỗi xẩy -Phan Lê Tuấn Luận văn cao học 92 Compliant hay noncompliant: khả chấp nhận yêu cầu tiến trình Các đặc tính thơng điệp: Với thơng điệp tiến trình, ta phải xác định tính liên tục tới tiến trình xa tiến trình nội bộ, khả phản hồi cần, thông điệp truyền theo chế đồng hay cận đồng 3.2.3 Mơ hình thời gian phản hồi tham chiếu: Trong mục ta xem xét thành phần thời gian phản hồi ứng dụng phân tán Sau mơ hình tham chiếu thời gian phản hồi, hình 3.6 Mơ hình bao gồm 20 tầng thể 20 thành phần thời gian phản hồi giao dịch Hình 3.6: Mơ hình thời gian phản hồi tham chiếu 3.2.3.1 Giới thiệu: Mô hình biểu diễn luồng giao dịch hệ thống core banking hoạt động môi trường client/server Yêu cầu xuất phát từ workstation -Phan Lê Tuấn Luận văn cao học 93 -được xử lí server nội server từ xa mạng kết nối, kết gửi trả lại cho client Mơ hình tổng hợp tất thành phần khác ảnh hưởng đến thời gian phản hồi ứng dụng môi trường client/server Nó bao gồm 20 tầng số tầng thay đổi tuỳ thuộc ứng dụng Hình 3.7 ví dụ mơ hình ứng dụng xây dựng Web Hình 3.7: Một dạng mơ hình chuẩn, dựa kĩ thuật Web Như ta biết hệ thống máy tính, thời gian phản hồi bao gồm dạng: thời gian sử dụng tài nguyên thời gian chờ sử dụng tài nguyên Thời gian sử dụng tài nguyên ảnh hưởng lớn đến tổng thời gian phản hồi ứng dụng tốc độ xử lí tài nguyên chậm, ví dụ disk hay mạng WAN Tuy nhiên môi trường phân tán, ứng dụng thường sử dụng nhiều thời gian để chờ sử dụng nguồn tài nguyên dùng chung, thời gian chờ tăng theo hàm mũ số lượng người dùng tăng lên 3.2.3.2 Các thành phần cùa hệ thống: Workstation: -Phan Lê Tuấn Luận văn cao học 94 -Một số tác vụ liên quan đến client khả xử lí workstation khơng đủ mạnh chuyển phần xử lí ứng dụng khỏi workstation Local server: Trong hệ thống 2-tier, hàm chia sẻ nằm server Enterprise server: Nơi đặt hệ quản trị sở liệu tiến trình giám sát hoạt động hệ quản trị sở liệu Network: Để giảm thời gian phản hồi ứng dụng cần thực giảm lượng liệu trao đổi client server Mạng truyền thông thành phần chậm dễ phát sinh lỗi hệ thống phân tán Do thành phần có performance nhất, để cải thiện performance thành phần ta cần thực phân cấp liệu tiến trình xử lí liệu để tối thiểu hoá yêu cầu trao đổi liệu máy chủ client 3.2.3.3 Thiết kế chi tiết thành phần hệ thống: Tầng 1: Client GUI processing: Trễ ứng dụng phát sinh giao diện người dùng (UI), thiết kế giao diện người dùng quan trọng Giao diện người dùng thiết kế tốt phải giảm số tác vụ mà người dùng phải thực để thu liệu theo yêu cầu Các ứng dụng sử dụng client dựa web chậm thành phần UI phải thực tải từ Web server Với ứng dụng sử dụng lặp lặp lại client nên trì thành phần tĩnh giao diện cache Để cải thiện tốc độ client GUI processing ta thực số thiết kế sau: -Phan Lê Tuấn Luận văn cao học 95 Tạo giao diện cố định cho tác vụ lặp lại Khi ứng dụng bao gồm nhiêu tác vụ lặp lại liên tiếp giao diện người dùng nên bao gồm cửa sổ, menu, hộp thoại cố định - Tạo đường dẫn cho giao diện người dùng Các tác vụ có quan hệ với mà người dùng thường sử dụng nên thực để cải thiện đáng kể performance hệ thống Tầng 2: Client Data Logic: Trong tầng thực số tác vụ tương đối đơn giản kiểm tra tính xác liệu đầu vào xây dựng yêu cầu để gửi đến server Tốc độ tầng chủ yếu phụ thuộc vào disk I/O xử lí tác vụ khác cổng giao tiếp mạng xử lí liệu thu thập qua mạng Các phương pháp cải thiện performance tầng này: - Lưu lại liệu tĩnh thay đổi: Thực lưu thông tin trao đổi cách thường xuyên để xử dụng lại cần mà truy suất đến thiết bị ngoại vi khác, thực lại thao tác tìm kiếm liệu sử dụng trước - Thừa kế động: Các cơng cụ phát triển ứng dụng dùng thừa kế động hoạt động cách khơng hiệu u cầu nhận thành phần thừa kế client gửi đến server Để giảm thiểu tải thừa kế động, cần phải sử dụng công cụ phát triển ứng dụng phù hợp dùng mơ hình phân cấp thừa kế dạng phẳng Tầng 3: Client Database I/O: Giao diện vào sở liệu client tầng dùng để kiểm tra tính xác liệu vào bảng, bảng lưu cache client gửi tới server lơ (batch) Phương pháp tối ưu hố performance tầng này: -Phan Lê Tuấn Luận văn cao học 96 -Tạo bảng: Định kì tải bảng quan trọng (ví dụ bảng dùng để kiểm tra tính xác thơng tin đầu vào) tới workstation để tối thiểu hố truy suất tới máy chủ liệu Tầng 4: Truyền dẫn mạng LAN (đầu vào): Các mạng LAN thường có tốc độ cao chúng dễ bị xung đột có nhiều người dùng truy cập Để tối thiểu hoá xung đột ta chứa câu lệnh SQL thủ tục từ xa gói gửi tới server thao tác liệu hệ quản trị sở liệu Tầng 5: Local Server Queuing: Nếu sử dụng trình giám sát giao dịch hay message-queuing middleware để quản lí tài nguyên máy chủ giao dịch phải chờ server xử lí Để tối ưu hố hệ thống, người ta gán data storage, transmission, yêu cầu xử lí ứng với tải với tài nguyên phần cứng phần mềm cụ thể Ta sử dụng dedicated application server để chia nhỏ cơng việc server có u cầu Tầng 6: Local Server Input Processing: Để tối ưu hoá, module sử dụng thường xuyên biên dịchi lần tạo để sử dụng lại sau Tầng 7: Local Server Database I/O: Tầng chủ yếu thực trình indexing kĩ thuật ODBMS Tầng 8: WAN queuing: Máy chủ nội sử dụng middleware để quản lí yêu cầu người dùng cần phải có khoảng thời gian trễ định để xử lí yêu cầu Tầng 9: WAN transmission (đầu vào): -Phan Lª TuÊn LuËn văn cao học 97 -Độ trễ tầng phụ thuộc kích thước liệu định truyền, băng thông đường truyền, khoảng cách truyền dẫn Tầng 10: Remote Server Queuing: Thông thường hệ thống core banking, giao dịch đến thường quản lí transaction management middleware( ví dụ TUXEDO…), mục đích để thực chia sẻ cách hiệu nguồn tài nguyên máy chủ Để giảm thời gian chờ người ta thường thực phân mức ưu tiên xử lí theo ứng dụng cụ thể Tầng 11: Remote Server Processing: Đây tiến trình xử lí liệu truy suất, để tối ưu hố người ta sử dụng SQL gateway Tầng 12: Remote Server Database I/O: Tầng 13: WAN queuing of results: Giống tầng 8, nhiên ứng với yêu cầu có nhiều thơng điệp phản hồi, cần tập hợp thông điệp trước gửi Tầng 14: WAN transmission of results: Giống tầng bao gồm nhiều thơng điệp khác Tầng 15: Local Server queuing: Giống tầng có nhiều yêu cầu phục vụ, thời gian chờ cần lâu Tầng 16: Local server results processing: Các kết riêng lẻ tập hợp lại theo yêu cầu ứng dụng Tầng 17: Local server database I/O: Các kết chứa bảng nội bộ, lượng thông tin phản hồi lớn cần chia nhỏ để gửi đến cho client Có thể cải thiện performance -Phan Lê Tuấn Luận văn cao học 98 -của tầng cách dùng công cụ tạo nhiều khác liệu Tầng 18: LAN transmission (đầu ra): Giống tầng 4, sử dụng kĩ thuật ghép liệu thành khối (block) để gửi đến client Tầng 19: Client Database I/O: Sử dụng thông tin thu để tổ chức liệu hiển thị kết cho người dùng Chú ý việc xếp kết nên thực máy chủ tốc độ truy suất disk client thường thấp hệ thống Tầng 20: Client Results Processing: Tầng thực thêm thao tác loại bỏ phần liệu dư thừa trước hiển thị kết cho người dùng -Phan Lª Tuấn Luận văn cao học ... khác khả scheduling tối ưu có 1.5 Các hệ thống file phân tán: Thành phần quan trọng hệ thống phân tán hệ thống file Cũng giống hệ thống xử lí, hệ thống phân tán, nhiệm vụ hệ thống file chứa chương... Deadlocks hệ thống phân tán: Deadlock hệ thống phân tán khó tránh khỏi, khó phát hệ thống đơn thơng tin liên quan phân bố toàn hệ thống 1.3.5.1 Phát deadlock phân tán: Việc phòng tránh deadlock hệ thống. .. Hình 1.4: Multiprocessor với hàng đợi 1.2 Truyền thông hệ thống phân tán: Sự khác biệt lớn hệ thống phân tán hệ thống đơn xử lí vấn đề thơng tin tiến trình Trong hệ thống uniprocessor, hầu hết