Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 30 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
30
Dung lượng
2,95 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC ĐÀ NẴNG BAN ĐÀO TẠO SAU ĐẠI HỌC HỆ TIN HỌC PHÂN TÁN ĐỀ TÀI: Vấnđềthựchiệntừxa và vaitròcủanó trong cáchệthốnghiện đại. Giảng viên hướng dẫn : PGS.TS Lê Văn Sơn Sinh viên thựchiện : Nguyễn Hải Minh Lớp : Khoa học máy tính K24 Đà Nẵng ngày 15 tháng 04 năm 2012 SVTH : NGUYỄN HẢI MINH MỤC LỤC Sinh viên thựchiện : Nguyễn Hải Minh 1 SVTH : NGUYỄN HẢI MINH LỜI MỞ ĐẦU Trong thời đại ngày nay, chúng ta đang chứng kiến sự phát triển mạnh mẽ của khoa học kỹ thuật, tiên phong cho sự phát triển này chính là công nghệ thông tin, đây là yếu tố góp phần quyết định đến sự phát triển của tất cả các lĩnh lực trong đời sống xã hội. Sự ra đời củahệ tin học phân tán như là một hệthống tin học hiệnđại được tích hợp từ những nghiên cứu tiên tiến nhất nhằm hỗ trợ cho việc phân tích và thiết kế cáchệthống tin học. Đây là lĩnh vực có phạm vi ứng dụng rộng, phát triển nhanh chóng và đã đạt được những thành tựu lớn. Hệ tin học phân tán cung cấp khả năng xử lý phân tán nhằm đảm bảo tính tương thích cho việc phân bố ngày càng rộng rãi củacác công ty, xí nghiệp, với độ tin cậy cao. Chính vì thế, hiện nay nhiều ứng dụng khoa học công nghệ được phân tán hóa như một hệ quả tất yếu. Chẳng hạn như : giao thương điện tử trên Internet, các ứng dụng đa phương tiện như việc cung cấp tin tức theo yêu cầu, các kỹ thuật chẩn đoán hình ảnh trong y khoa hoặc cáchệthống điều khiển sản xuất… Từthực tiễn đó, nhằm tổng kết những kiến thức đã đạt được từ môn “Hệ tin học phân tán” em xin phép được thựchiện tiểu luận môn học với nội dung: Phần lí thuyết: Vấnđềthựchiệntừxa và vaitròcủanó trong cáchệthốnghiện đại. Phần bài tập: Hãy lập chương trình tạo website giới thiệu và bán các sản phẩm máy tính bằng ASP. Hãy rút ra kết luận về những khía cạnh phân tán của ASP. Em xin cảm ơn thầy giáo PGS.TS Lê Văn Sơn đã tận tình hướng dẫn em hoàn thành bài tiểu luận này. Mặc dù em đã cố gắng hết sức nhưng với thời gian và kiến thức hữu hạn nên chắc chắn vẫn còn nhiều thiếu sót, rất mong nhận được sự góp ý chân thành của thầy cùng các bạn. Đà Nẵng ngày 14 tháng 04 năm 2012 SVTH : NGUYỄN HẢI MINH SVTH : NGUYỄN HẢI MINH TIỂU LUẬN-HỆ TIN HỌC PHÂN TÁN GVHD : PGS.TS LÊ VĂN SƠN Chương 1: Cơ chế điều khiển việc thựchiệntừxatronghệ phân tán Công cụ chính yếu để lập trình vàthựchiệncác ứng dụng tronghệ tin học phân tán là các ngôn ngữ lập chương trình được bổ sung thêm một số lệnh, hàm hay thủ tục chuẩn cho phép người lập trình biên soạn vàthựchiệntrong môi trường phân tán. Các ngôn ngữ thuật toán mà ta thường sử dụng để lập chương trình trongcáchệ tập trung không có khả năng đặc biệt này. Các khái niệm mới như vấnđềtrỏ đến các đối tượng xử lý trongcác ứng dụng vàcác biểu thức điều khiển xác định dãy tạm thời các thao tác sơ đẳng khác nhau. I.1 Giới thiệu ứng dụng Một ứng dụng quen thuộc hàng ngày đối với NSD là hệthống mua bán hàng, HỆ KINH DOANH TỪXA (viết tắt là HKDTX). Đối tượng chính của ứng dụng này là tra cứu giá cả trongcác bảng CSDL về giá được lưu trữ tại các thành phố khác nhau. Bảng giá hàng hoá là một tập hợp với cú pháp: trong đó, mã hàng hoá là con trỏ tới một loại hàng hoá duy nhất. Đểthựchiện được ứng dụng này, người ta triển khai trên hệthống thiết bị tin học không có bộ nhớ chung như hình vẽ Hình I.1.Cấu trúc ứng dụng Trên hình vẽ, ta thấy hệthống bao gồm các trạm phân bố trên một bình diện rộng bao gồm ba thành phố A, B, C được nối với nhau thông qua mạng viễn thông. Tronghệthống ta thấy có hai trạm lưu trữ và một trạm truy vấn. Trạm lưu trữ không chỉ có khả năng ghi lại cácthông tin trong CSDL của mình, mà còn có SVTH : NGUYỄN HẢI MINH Trang 1 <mã hàng hoá, tên gọi hàng hoá, giá thời điểm tại địa phương> TIỂU LUẬN-HỆ TIN HỌC PHÂN TÁN GVHD : PGS.TS LÊ VĂN SƠN thể truy tìm thông tin cần thiết trong chính các CSDL đó. Trạm truy vấn có khả năng đặt ra các câu hỏi cho trạm đáp ứng trả lời. Ta cần xác định hai loại chức năng chủ yếu của ứng dụng là đối thoại và tra cứu. Tra cứu được tiến hành nhằm mục đích tìm ra thông tin cần tìm với điều kiện tên gọi của hàng hóa hoặc mã hàng hoá đang tồn tại trong CSDL và bản thân việc đề nghị là hợp thức về quyền truy cập. Tên gọi của tập tin và mã hàng hóa trong bảng CSDL là các tham số của thủ tục hay hàm. Đối thoại nhằm xác định tên từ CONSOLE. Nóthựchiệncác hai chức năng tra cứu trong trường hợp có hai CSDL vàhiện lên màn hình. Nhằm thựchiện chương trình cho việc thựchiện ứng dụng nêu trên, ta cần phải có các kỹ thuật cho phép xác định: - Ở thời điểm cho trước, biểu diễn các mối liên hệ lô gích giữa các chức năng khác nhau của ứng dụng như tình tuần tự, độc lập hoàn toàn, song song với các điểm kiểm tra, - Các chức năng được thựchiện nằm trên trạm nào Và cuối cùng là các đối ứng dụng khác nhau (các hàm, tập tin vàcác trạm) cần phải được trỏ tới bởi các biến xuất hiệntrong bản thân văn bản các hàm doi_thoai và truy_van. I.2 Điều khiển việc thựchiệnCác hoạt động khác nhau của một chương trình cho trước được đảm nhận bởi một hay nhiều bộ xử lý. Trước khi đi vào đa xử lý thật sự, ta cần xem xét việc thựchiện một ứng dụng bao gồm nhiều hoạt động song song lô gích và xác định các lệnh chuyển điều khiển cho phép điều khiển các hoạt động song song đó. Khi một hoạt động A nào đó nhờ lệnh chuyển điều khiển kích hoạt mới B thì phải: SVTH : NGUYỄN HẢI MINH Trang 2 TIỂU LUẬN-HỆ TIN HỌC PHÂN TÁN GVHD : PGS.TS LÊ VĂN SƠN - Chính xác hoá định nghĩa của hoạt động B: điều đó cho phép tạo nên trong chương trình nguồn sẽ thựchiệnvàtrong ngữ cảnh hay ít nhất là một phần trong ngữ cảnh không được liên kết theo kiểu tĩnh - Xác định đểnótrở thành hoạt động A: điều đó thực tế có thể bị huỷ bỏ, treo hay tiếp tục thựchiện - Chỉ ra hoạt động nào B cần phải liên thôngcác kết quả tính toán. Trên thực tế B có thể không biết trước được. Ví dục: một thủ tục nào đó gọi thủ tục khác mà nó không biết một cách tường minh. Như vậy, ta hình thành khi gọi một liên hệ điều khiển mà liên hệ điều khiển này được sử dụng khi trở về. Các liên hệ điều khiển được thể hiện bằng các lệnh đặc biệt. Khi đi tìm hiểu cơ chế điều khiển việc thựchiện thì ta phải dựa trên các liên hệhệ điều khiển vàcác dạng thành có thể của một hoạt động gọi. I.2.1 Kết nối có kiểm soát I.2.1.1 Thủ tục Hình thức phổ biến nhất nhằm vận hành một hoạt động là gọi thủ tục. Ngữ cảnh của một thủ tục được kết hợp với chính thủ tục đó theo kiểu tĩnh (các đối tượng cục bộ, toàn cục) và được làm đầy đủ khi gọi bởi các đối tượng có liên hệcủacác hoạt động gọi (các tham số thực tế) Khi gọi, các hoạt động gọi chuyển sang trạng thái treo và một liên hệ điều khiển được hình thành sẽ cho phép hoạt động bị gọi tìm hoạt động gọi và kích hoạt trở lại về sau. Ta hãy lưu tâm đến điều rất quan trọng là ngữ cảnh của hoạt động gọi được lưu trữ trong suốt quá trình treo. Nhờ gọi thủ tục mà ta có thể lập trình hoạt động hợp đồng mua bán theo nhiều kiển khác nhau. Để lập trình các ví dụ, một thủ tục cho kết quả gọi là hàm. Khi gọi, ta làm đầy theo kiểu động ngữ cảnh của hoạt động gọi bằng cách trao đổi danh mục mà nó phải làm việc trên đó. SVTH : NGUYỄN HẢI MINH Trang 3 TIỂU LUẬN-HỆ TIN HỌC PHÂN TÁN GVHD : PGS.TS LÊ VĂN SƠN I.2.1.2 Tiếp tục Khái niệm thủ tục rất gượng ép trong một số trường hợp. Thực tế xuất phát từ hai vấn đề: 1. Hoạt động có tình chất lô gích hoặc có tính chất hàm, thủ tục là một hộp đen, thông qua đó ta có thể xác định chính xác các giá trị đầu, các tác động vàcác giá trị đầu ra. 2. Mối liên hệ điều khiển tất yếu thuộc loại trở về hoạt động gọi sau khi thựchiện xong thủ tục. Ta có thể liên hệ khái niệm này với lệnh go to trong một số ngôn ngữ. Như vậy, ta có thể định nghĩa hàm là nguyên thủy chuyển điều khiển một cách tổng quát nhất như sự chuyển tiếp tục. Chuyển tiếp tục là mối liên hệ điều khiển, thay vì ngầm định như trong trường hợp gọi thủ tục (trở về chương trình gọi), thì được xây dựng một cách tường minh trong hoạt động gọi. Do vậy, để cho hoạt động được gọi các mối liên hệ này là các tham số đặc biệt thuộc kiểu hoạt động vànó có thể được khai thác nhờ vào lệnh khởi sự. Sau đây, ta trình bày hai hoạt động gọi và được gọi: SVTH : NGUYỄN HẢI MINH Trang 4 Hoạt động gọi Khai báo D: hoạt động K: nem_ra M(D, K) {Tiếp tục của M} TIỂU LUẬN-HỆ TIN HỌC PHÂN TÁN GVHD : PGS.TS LÊ VĂN SƠN I.2.1.3 Nguyên tố so sánh Sơ đồ mang tính chất thủ tục này thích nghi rất tốt với tình huống là sau các tính toán trung gian (đó là một thủ tục), ta có thể trở lại trên cùng một ngữ cảnh. Các tiếp tục đó cho phép xây dựng các sơ đồ thựchiện một cách tổng quát như sơ đồ không trở lại như sau: Trong khi đó, nếu ta muốn tìm lại một hoạt động được đặt ở dầu dãy các nguyên tố của ngữ cảnh khởi động, ta bị buộc phải chuyển ngữ cảnh này thông qua tất cả các hoạt động trung gian Có nhiều cấu trúc phân tán áp dụng thành công khái niệm tiếp tục. Thực tế ta có thể áp dụng cho mỗi một trongcác nguyên tố của dãy máy tính thích nghi (ví dụ các bộ xử lý phối hợp đểthựchiện việc tìm kiếm trongcác bảng) tính toán chung của chúng. Thêm vào đó, việc sử dụng khái niệm tiếp tục không chỉ cho phép thiết lập động các sơ đồ kiểu này mà còn cho phép khái quát hoá các nguyên tố mang đến các sơ đồ khác nhau. Việc chuyển ngữ cảnh dọc theo chiều dàicủa một dãy tiêp tục, lúc này, thể hiện tính ưu việt trong cung cấp biểu diễn duy nhất tiện lợi (định vị trong một hoạt động) củacác dữ liệu ứng dụng vàcác liên hệ điều khiển. Đặc điểm nổi bật là khi SVTH : NGUYỄN HẢI MINH Trang 5 Ghi →truy_van1→truy_van2→tra_loi Hoạt động được gọi hoạt dộng M (hoạt động AVC, tham số X) <Tính toán trên tham số X> nem_ra AVC( ) TIỂU LUẬN-HỆ TIN HỌC PHÂN TÁN GVHD : PGS.TS LÊ VĂN SƠN xử lý lỗi thông thường liên quan đến việc huỷ bỏ một hoạt động kéo theo việc huỷ luôn ngữ cảnh một cách dễ dàng. I.2.2 Song song Gọi thựchiện mang tính chất thủ tục bằng cách treo hoạt động gọi là nguyên nhân chủ yếu cho việc cố định số lượng hoạt động đang thựchiệntrong một hệ. Do vậy, một chương trình nào đó không bao giờ chứa các yêu tố song song lớn hơn số lượng mà bản thân nó có được khi xuất phát. Ta có thể dễ dàng tránh được hạn chế vừa nêu bằng cách tạo ra khả năng mới. Đó là một hoạt động không chuyển sang trạng thái treo khi kích hoạt một hoạt động khác. Như vậy, cần phải tồn tại giữa hoạt động tạo và hoạt động được tạo một song song. Trong quá trình thựchiệncủacác hoạt dộng song song, việc đồng bộ hóa là rất cần thiết bằng cách trao đổi thông tin. Điều này đặc biệt rất đúng, khi ta kết thúc một hoạt động có khai thác liên hệ điều khiển. Ví dụ Nếu hai truy_van không giao nhau, chúng có thể được thựchiện hoàn toàn theo kiểu song song nhau và lúc này ứng dụng thương mại điện tử được cấu trúc hóa theo kiểu như hình vẽ Hình I.2. Ứng dụng truy vấn giá cả theo kiểu song song SVTH : NGUYỄN HẢI MINH Trang 6 TIỂU LUẬN-HỆ TIN HỌC PHÂN TÁN GVHD : PGS.TS LÊ VĂN SƠN Trong đó, lệnh điều khiển đã được đặt trong S thể hiện ý tưởng song song. Nói một cách tổng quát, ta có thể đánh giá: 1. Hoạt động chính tạo ra hoạt động mới đồng thời tiếp tục thựchiện công việc của mình. 2. Hoạt động chính được tách ra thành nhiều hoạt động con song song. Các lệnh điều khiển kết thúccác hoạt động của mình (tại điểm R trong hình vẽ) là khác nhau theo các liên hệ điều khiển được truyền vào thời điểm khởi sự. Trong trường hợp 1, hoạt động được tạo nên cần phải đồng bộ với hoạt động chính mà đã không bị treo. Trong trường hợp 2, các hoạt động con khác nhau cần phải được kết nối với nhau. Sau đây, ta chỉ ra một số ví dụ minh họa thể hiệncác khả năng có thể của điều vừa nêu trên. 1. Hoạt động cặp song song Hình thức sơ khai nhất là fork-join có thể so sánh với lệnh go to trong lập trình tuần tự. Nó không có sự thiết lập thực sự nào về liên hệ điều khiển. Hoạt động song song được tạo ra và điểm trở về được đánh dấu bằng nhãn. Ví dụ: để lập chương trình ứng dụng thương mại, điểm S tương ứng với lệnh kích hoạt fork và mỗi điểm R là một lệnh join E. Với các lệnh náy, người ta có thể biểu diễn bằng một đồ thị nào đó mà các nút củanó là các điểm kích hoạt (đưa ra) vàcác điểm nối. Một hình thức cặp chặt chẽ được hình thành theo kiểu parbegin-parend hay par của ALGOL 68. Ứng dụng thương mại từxa bây giờ có thể lập trình như sau: SVTH : NGUYỄN HẢI MINH Trang 7 parbegin gia1:= truy_van(mahh) gia2:= truy_van(mahh) parend ghiramanhinh(console1, mahh, ten, gia1, gia2) [...]... giải quyết vấnđề này, ta cần phải định nghĩa các lớp tiến trình căn cứ vào chức năng phục vụ mà chúng đảm nhận vào ứng dụng gắn bó chúng lại với nhau, nghĩa là phải phối hợp tiến trình với windows Tronghệ phân tán không có bộ nhớ chung Tất cả các truy cập từxa đều được thựchiện bằng liên lạc giữa các tiến trình Để cho các trao đổi, các bộ định danh củacáccửa sổ và mỗi trạm có thể sử dụng các quy... tắc riêng của mình trong việc định danh Tronghệthống như vậy, người ta có thể xây dựng các ứng dụng có sử dụng cáchệ riêng của mình để định danh tổng quát cho các đối tượng khác nữa (ngoài các tiến trình) I.4 Kết luận Qua những nội dung tìm hiểu được trong chương I, bước đầu giúp chúng ta hiểu được phần nào cơ chế cơ bản nhất trong điều khiển việc thựchiệntừxatronghệ phân tán Ngoài ra, nó còn... chương trình nguồn thường có các định danh thể hiện dưới dạng một dãy các ký tự đặc trưng duy nhất cho đối tượng Trong khi thựchiện chương trình, các định danh này cần phải gắn chặt với các đối tượng thựcđểtrỏ chính xác vị trí của chúng Trong từng thời điểm, cặp tạo thành ngữ cảnh thựchiện Mối quan hệ giữa đối tượng cần trỏ đến và định danh củanó gọi là liên kết Liên kết... vàtrong trường hợp đó, thông thường, con trỏ chứa một phần đặc trưng cho trạm và một phần khác riêng cho bản thân nó I.3.3 Thành lập dãy truy cập SVTH : NGUYỄN HẢI MINH Trang 16 TIỂU LUẬN-HỆ TIN HỌC PHÂN TÁN GVHD : PGS.TS LÊ VĂN SƠN Đểthựchiệncác truy cập từxa cần phải thựchiện liên thôngcác tiến trình đã được đưa vào trên các trạm khác nhau Sự liên thông đó tất yếu dựa trên cơ sở trao đổi các. .. hướng ta đến việc thành lập một chuỗi các truy cập đến đối tượng vànó cần phải thựchiện muộn hơn thời điểm thựchiện một lệnh truy cập đối tượng Thựchiện theo kiểu như vậy tốn nhiều thời gian, cho nên trong một số trường hợp, người ta có thể thựchiện trước I.3.1.2 Liên kết động Khi triển khai cơ chế liên kết động, ta gặp hai vấnđề cơ bản sau đây: 1 Xuất phát từ định danh cần phải tìm đối tượng 2... Trong trường hợp gọi thủ tục, ta có thể sử dụng hàm nguyên thủy đặc biệt nhằm thựchiện gửi và chờ thông điệp I.2.3.2.3 Lai lịch của đối tác Các dạng hàm nguyên thuỷ liên lạc vàcác khả năng của chúng sẽ thay đổi dựa vào việc xác định chính xác hay không lai lịch của đối tác Các hình thức phổ biến nhất dựa vào sự minh họa trong ứng dụng thương mại điện tử SVTH : NGUYỄN HẢI MINH Trang 14 TIỂU LUẬN-HỆ... nhằm thựchiện gửi và chờ thông điệp I.2.3.2.4 Khả năng có lỗi trong quá trình liên lạc Lỗi trong quá trình truyền thông tin có thể xử lý theo hai cách STT 1 Thuyết minh NSD không hề biết các lỗi phát sinh trong quá trình khai Điều khiển thác Các lỗi này thường được khắc phục ở mức trongCác lỗi được điều khiển tường minh bời người lập trình tường minh 2 Tên gọi Ẩn Trong trường hợp này các tham số của. .. phải thựchiệnvàcác hàm tham số cần trao đổi, mặt khác, một thực thể trong trạng thái sẵn sàng nhận trên một trạm xaThực thể đó chính là tiến trình Tiến trình theo nghĩa thông thường là thựchiện chương trình trên một trạm xác định Ta giả thiết rằng trên mỗi trạm tồn tại một chương trình cung cấp cho phép chia sẻ một (hay nhiều) bộ xử lý của trạm cho các tiến trình (thông thường số lượng thay đổi) và. .. cần phải chứa lai lịch của chương trình cần thực hiện, các gía trị tham số và tất cả cácthông tin cần thiết cho việc ném hoạt động như lai lịch nguồn trong trường hợp sử dụng liên hệ điều khiển kiểu trở về, tiếp tục, Ta cần phân biệt hai chiến lược quản lý các yêu cầu dựa theo số lượng cố định hay không cố định các tiến trình Ta gọi server là tiến trình thựchiện việc xử lý các yêu cầu SVTH : NGUYỄN... tượng I.3.2 Cấu trúc và phiên dịch con trỏĐể trình bày một cách chi tiết các đặc trưng cho một con trỏ nào đó, người ta thường chỉ ra các đặc tính củanóCác đặc tính đó được phản ánh như sau: STT 1 2 Đặc tính Sự vận động hay miền tác dụng của con trỏ Một con trỏ gọi là toàn cụ khi có cùng định danh không phụ thuộc vào môi trường sử dụng củanó Sự phụ thuộc rõ rệt của con trỏ vào sự định vị đối tượng . DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC ĐÀ NẴNG BAN ĐÀO TẠO SAU ĐẠI HỌC HỆ TIN HỌC PHÂN TÁN ĐỀ TÀI: Vấn đề thực hiện từ xa và vai trò của nó trong các hệ thống hiện. thuyết: Vấn đề thực hiện từ xa và vai trò của nó trong các hệ thống hiện đại. Phần bài tập: Hãy lập chương trình tạo website giới thiệu và bán các sản