Bài giảng Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng

Ứng dụng “Grid NetManager” được xây dựng trên môi trường và công cụsau:

+ Công cụphân tích thiết kế: Rational Rose 2000, Microsoft Visio 2003.

+ Môi trường xây dựng và thực thi : Linux Redhat 9.0 (kernel 2.4.20-8).

+ Ngôn ngữlập trình : C/C++

+ Môi trường phát triển ứng dụng :

Editor : KDevelop 2.1.

Compiler : GCC, G++

Debugger : GDB.

+ Môi trường Grid : Globus Toolkit 3.2. và các phần mềm đi kèm.

+ Sửdụng mã nguồn Ethereal 0.10.0a

+ Sửdụng các thưviện:

Thưviện giao diện đồhọa : GTK+ 1.2

Các thưviện phát triển ứng dụng của GT3.2 : GSI, pre-WS GRAM, preWS MDS, GridFTP,

pdf23 trang | Chia sẻ: oanh_nt | Lượt xem: 1266 | Lượt tải: 0download
Bạn đang xem trước 20 trang nội dung tài liệu Bài giảng Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 170 - 7.1.4.2.2. Add Configuration Capturing colaboration diagram 3: // Enter configuration for node : Nha quan tri : MainForm : ConfigureCtrl : ConfigureEntity : ConfigureForm 1: // Call ConfigureForm 4: // Add a configuration node 2: // Show 5: // Verify add a configuration 6: // Add configuration Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 171 - 7.1.4.2.3. Update Configuration Capturing sequence diagram : Nha quan tri : MainForm : Conf igureForm : Conf igureCtrl : Conf igureEntity // Call Conf igureForm // Show // Change conf iguration f or node // Update a conf iguration node // Verif y update a conf iguration // Change conf iguration 7.1.4.2.4. Update Configuration Capturing colaboration diagram 5: // Verify update a configuration : Nha quan tri : MainForm : ConfigureEntity : ConfigureForm : ConfigureCtrl 1: // Call ConfigureForm 3: // Change configuration for node 4: // Update a configuration node 2: // Show 6: // Change configuration Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 172 - 7.1.4.2.5. Remove Configuration Capturing sequence diagram : MainForm : Nha quan tri : Conf igureForm : Conf igureCtrl : Conf igureEntity // Call Conf igureForm // Show // Remov e conf iguration f or node // Remov e a conf iguration node // Verif y remov e a conf iguration // Remov e conf iguration 7.1.4.2.6. Remove Configuration Capturing colaboration diagram : MainForm : Nha quan tri : Conf igureForm : Conf igureCtrl : Conf igureEntity 2: / / Show 1: // Call Conf igureForm 3: // Remov e conf iguration f or node 4: // Remov e a conf iguration node 5: // Verif y remov e a conf iguration 6: // Remov e conf iguration Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 173 - 7.1.4.3. Use case “Capture” 7.1.4.3.1. Capture - Start Basic Flow sequence diagram : Display Thread : Nha quan tri : MainForm : CaptureCtrl : StartCapture Thread // Start capture // Call capture // Create thread Start // Show packet // Create thread Display // send content of packet 7.1.4.3.2. Capture – Start Basic Flow colaboration diagram : CaptureCtrl : Nha quan tri : MainForm : StartCapture Thread : Display Thread 1: // Start capture 2: // Cal l capture 6: // Show packet 3: // Create thread Start 4: // Create thread Display 5: // send content of packet Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 174 - 7.1.4.3.3. Capture - Start Error Flow sequence diagram : StartCapture Thread : Nha quan tri : MainForm : CaptureCtrl : MessageBox // Start capture // Call capture // Create thread Start // Notif y result // Show error message 7.1.4.3.4. Capture – Start Error Flow colaboration diagram : Nha quan tri : MainForm : CaptureCtrl : StartCapture Thread : MessageBox 1: // Start capture 2: // Call capture 3: // Create thread Start 4: // Notify result 5: // Show error message Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 175 - 7.1.4.3.5. Capture - Start Stop Flow sequence diagram : Nha quan tri : MainForm : CaptureCtrl : StartCapture Thread : MessageBox // Stop capture // Cal l stop // Create thread Stop // Message back // Show message 7.1.4.3.6. Capture – Start Stop Flow colaboration diagram : Nha quan tri : MainForm : StartCapture Thread : MessageBox : CaptureCtrl 1: // Stop capture 2: // Call stop 3: // Create thread Stop 4: // Message back 5: // Show message Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 176 - 7.1.4.3.7. Capture – Start Error Flow sequence diagram : MessageBox : StartCapture Thread : Nha quan tri : MainForm : CaptureCtrl // Stop capture // Cal l stop // Create thread Stop // Message back // Show message Error 7.1.4.3.8. Capture – Start Error Flow colaboration diagram : Nha quan tri : MainForm : CaptureCtrl : MessageBox : StartCapture Thread 1: // Stop capture 2: // Call stop 3: // Create thread Stop 4: // Message back 5: // Show message Error Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 177 - 7.1.4.4. Use case “Query” 7.1.4.4.1. Query - Basic Flow sequence diagram : Nha quan tri : MainForm : FilterCtrl : FilterThread // Call Filter // Submit Filter // Create Filter Thread // Content of packet return // Show content of message 7.1.4.4.2. Query - Basic Flow colaboration diagram : Nha quan tri : MainForm : FilterCtrl : FilterThread 1: // Call Filter 2: // Submit Filter 5: // Show content of message 3: // Create Filter Thread 4: // Content of packet return Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 178 - 7.1.4.4.3. Query - Error Flow sequence diagram : FilterThread : Nha quan tri : MainForm : FilterCtrl : MessageBox // Call Filter // Submit Filter // Create Filter Thread // Error return // Show message error 7.1.4.4.4. Query - Error Flow sequence diagram : Nha quan tri : MainForm : Fi lterThread : MessageBox : Fi lterCtrl 1: // Call Fi lter 2: // Submit Filter 3: // Create Fi lter Thread 4: // Error return 5: // Show message error Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 179 - 7.2. Thiết kế 7.2.1. Sơ đồ các đối tượng cài đặt Vì khi cài đặt phải kết hợp với mã nguồn của Ethereal (viết theo ngôn ngữ C) và sử dụng các thư viện không hướng đối tượng nên chỉ có thể phát triển theo hướng đối tượng một số xử lý liên quan đến Globus. 1. Sơ đồ các lớp đối tượng module GridManager GL_GRAM_JOBS_CALLBACK JobsTableMutex : globus_mutex_t JobTable : map callback_contact : char * Add(... : string, .... : GL_GRAM_JOB *) : void Remove(... : char*) : void GetURL() : char * GetJob(... : char *) : GL_GRAM_JOB * Lock() UnLock() GL_CB mutex : globus_mutex_t cond : globus_cond_t done : globus_bool_t IsDone() SetDone() Continue() Wait() GL_GLOBUS_FTP_CLIENT fd : FILE * buffer : globus_byte_t handle : globus_ftp_client_handle_t StartTransfer() Transfer() Host hostName : string cpu : long GetHostName() : string GetCPU() : Long GL_GRAM_JOB failed : globus_bool_t jobcontact : char * callback : GL_GRAM_JOBS_CALLBACK HasFailed() : globus_bool_t SetFailed() Submit(... : ...) Cancel() SetJobContact(... : ...) Wait() 1 name 1 Broker GetLinuxNodes() Hình 7-3 Sơ đồ lớp cài đặt lớp đối tượng. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 180 - 2. Danh sách các lớp đối tượng STT Tên lớp Loại đối tượng Diễn giải 1. GL_CB Control Lớp cung cấp các hàm gọi cho việc bắt đầu, chờ đợi và kết thúc của một công việc 2. GL_GRAM_JOBS_CALLBAC K Control Lớp quản lý việc gọi thực hiện một danh sách các công việc thông qua định danh của công việc 3. GL_GRAM_JOB Control Lớp chịu quản lý việc thực thi và kết thúc một công việc. 4. GL_GLOBUS_FTP_CLIENT Control Lớp chịu trách nhiệm quản lý truyền dữ liệu với GridFTP. 5. GL_BROKER Control Tìm kiếm thông tin về các máy trong hệ thống Grid Bảng 7-3 Danh sách các đối tượng cài đặt. 7.2.2. Thiết kế giao diện 7.2.2.1. Danh sách các màn hình Giao diện ứng dụng Grid NetManager thử nghiệm ngoài sử dụng lại các giao diện của Ethereal, có thêm một số điểm mới sau: STT Tên màn hình Diễn giải 1. Grid NetManager Sử dụng lại màn hình chính của Ethreal, thêm các chức năng mới, thể hiện của các usecase Capture, Query Packet Information, Search nodes, cho phép tìm kiếm các máy tính thỏa các điều kiện yêu cầu về tài nguyên, cho phép nhập câu truy vấn các thông tin về packet và xuất kết quả ra màn hình, cho phép khởi tạo và kết thúc quá trình bắt packet. Màn hình này cho phép sử dụng lại các chức năng phân tích của Ethereal. 2. Packet Capture Configure Thể hiện usecase Configure Packet Capturing, cho phép người dùng cấu hình các thông tin phục vụ bắt packet như node thực thi, tên file lưu trữ, node lưu dữ liệu, capture filter. Bảng 7-4 Danh sách các giao diện. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 181 - 7.2.2.2. Chi tiết các màn hình 7.2.2.2.1. Màn hình Grid NetManager Hình 7-4 Màn hình chính ứng dụng Grid NetManager thử nghiệm Mô tả màn hình (danh sách các control được thêm vào màn hình chính cùa ethereal) STT Tên control Tên trên giao diện Kiểu Diễn giải 1. mds_server_te MDS Server Textbox Cho phép nhập vào tên của MDS Server đang quản lý thông tin của hệ thống Grid 2. filter_te Filter Textbox Chứa nội dung truy vấn cơ sở dữ liệu. Sau khi nhận đầy đủ câu truy vấn, hệ thống sẽ cho gọi thực thi module PacketInfoProvider trên các máy ở xa, chờ nhận kết quả và xuất ra màn hình. 3. node_cb Nodes Combo Chứa danh sách Node thoả điều kiện tìm kiếm hiện đang có trong Grid. 4. nodes_bt Nodes Button Thực hiện tìm kiếm các Node thỏa điều kiện yêu cầu về tài nguyên từ MDS server và đưa ra cboNodes Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 182 - 5. Start_bt Start Button Bắt đầu quá trình bắt packet trên các node. 6. stop_bt Stop Button Kết thúc quá trình bắt packet. Bảng 7-5 Mô tả màn hình chính. 7.2.2.2.2. Màn hình Packet Capture Configure Hình 7-5 Màn hình Packet Capture Configue Mô tả màn hình (danh sách các control) STT Tên control Tên trên giao diện Kiểu Diễn giải 1. clist_Node Listbox Hiện thị các chọn lựa cấu hình bắt packet của người dùng. 2. file_te File Textbox Chứa tên file lưu trữ dữ liệu khi bắt xuống. 3. filter_te Argument Textbox Chứa nội dung cấu hình bắt packet của từng module Sensor. 4. computer_cb Sensor Combo Chứa danh sách Node thoả điều kiện tìm kiếm tài nguyên, hiện đang có trong Grid, dùng để chọn máy thực Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 183 - thi module Sensor. 5. store_cb Database Computer Combo Chứa danh sách Node thoả điều kiện tìm kiếm tài nguyên, hiện đang có trong Grid, dùng để chọn máy lưu trữ dữ liệu. 6. btnOK OK Button Lưu lại cấu hình các module. 7. btnAdd Add Button Thêm cấu hình cho một module mới 8. btnUpdate Update Button Cập nhật lại cấu hình của một module. 9. btnRemove Remove Button Loại bỏ một cấu hình module. Bảng 7-6 Mô tả màn hình cấu hình bắt packet. 7.3. Cài đặt & Triển khai 7.3.1. Công cụ và môi trường phát triển ứng dụng Ứng dụng “Grid NetManager” được xây dựng trên môi trường và công cụ sau: + Công cụ phân tích thiết kế : Rational Rose 2000, Microsoft Visio 2003. + Môi trường xây dựng và thực thi : Linux Redhat 9.0 (kernel 2.4.20-8). + Ngôn ngữ lập trình : C/C++ + Môi trường phát triển ứng dụng : Editor : KDevelop 2.1. Compiler : GCC, G++ Debugger : GDB. + Môi trường Grid : Globus Toolkit 3.2. và các phần mềm đi kèm. + Sử dụng mã nguồn Ethereal 0.10.0a + Sử dụng các thư viện: Thư viện giao diện đồ họa : GTK+ 1.2 Các thư viện phát triển ứng dụng của GT3.2 : GSI, pre-WS GRAM, pre- WS MDS, GridFTP, … Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 184 - 7.3.2. Mô hình cài đặt 1. Mô hình TETHEREAL (Fi le chuong trinh thuc thi) Grid NetManager (Module Quan tri) Hình 7-6 Mô hình cài đặt. 2. Diễn giải STT Tên thành phần Ý nghĩa 1. tEthereal Là file chương trình tethereal, chương trình tethereal được sử dụng thực thi chức năng của 2 module Sensor và module PacketInfoProvider. 2. Grid NetManager Là file chương trình thực thi chức năng quản trị và trình diễn. Bảng 7-7 Các thành phần triển khai. 7.3.3. Mô hình triển khai Hệ thống có thể được triển khai trong hệ thống mạng máy tính cần quản trị với cấu hình như sau: Hình 7-7 Sơ đồ triển khai ứng dụngGrid NetManager thử nghiệm. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng - 185 - Giải thích: Các máy tính tham gia Grid đều được cài đặt bộ Globus Toolkit 3.2, các máy tính này không cần phải dành riêng cho Grid mà có thể sử dụng cho các ứng dụng khác. Ứng dụng sẽ tự động hoặc cho nhà quản trị chọn các máy tính “rảnh rỗi”(theo một tiêu chí nào đó) để thực thi các module. Nên có một mạng cục bộ dành riêng cho Grid (Grid Network) để không ảnh hưởng đến năng lực mạng của tổ chức. Các máy tính Grid ngoài việc kết nối với mạng nội bộ của tổ chức, có thêm một kết nối đến mạng Grid dành riêng. Các máy tính chạy module Sensor nhất thiết phải kết nối với một LAN segment cần bắt packet, một LAN segment chỉ cần một máy chạy module Sensor là đủ. Nhà quản trị sử dụng một máy tính Grid chạy gói Quản trị (gồm module Presentation và PacketInfoManager) để quản trị toàn hệ thống. 7.3.4. Thử nghiệm 7.3.4.1. Mô hình thử nghiệm Hình 7-8 Mô hình cài đặt thử nghiệm Các máy tính thử nghiệm được triển khai như hình 7-8. Đã thử nghiệm thành công chức năng gửi và thực thi công việc trên máy tính ở xa, chức năng bắt packet, xử lý truy vấn. Chương 8. Kết luận - 186 - Chương 8. Kết luận 8.1. Đánh giá 8.1.1. Về luận văn Ở mức luận văn, nhóm thực hiện đã thu được những kết quả sau : + Tìm hiểu khá chi tiết, tổng quan về các khía cạnh nền tảng công nghệ Grid Computing hiện nay như bản chất khái niệm, các thách thức và yêu cầu, lợi ích và ứng dụng, mô hình kiến trúc, các chuẩn hiện nay, tìm hiểu và so sánh các middleware Grid phổ biến hiện nay. + Tìm hiểu khá đầy đủ, tổng quan về bộ Globus Toolkit 3.2 về mô hình, cách thức giải quyết các thách thức cơ bản của công nghệ Grid, các dịch vụ cơ bản, các yêu cầu, lưu ý khi xây dựng các dự án ứng dụng Grid với bộ Globus Toolkit. + Bên cạnh đó, các vấn đề cơ bản về quản trị mạng, hệ thống quản trị mạng, hệ thống Intrusion Detection System, cũng đã được tìm hiểu, làm cơ sở để đưa ra mô hình ứng dụng Grid NetManager. Các kiến thức ở đây có thể được sử dụng để định hướng tìm hiểu, nghiên cứu sâu hơn về công nghệ Grid Computing và bộ Globus Toolkit, cũng như sử dụng để phát triển ứng dụng Grid. Hướng tiếp cận sử dụng công nghệ Grid Computing vào bài toán quản trị mạng là một hướng mới, hiện chưa có dự án nào được công bố. 8.1.2. Về ứng dụng Dựa trên những kết quả nghiên cứu, tìm hiểu từ công nghệ Grid Computing và các hệ thống quản trị mạng, nhóm thực hiện đã đạt được những kết quả sau : + Đề xuất mô hình hệ thống quản trị mạng dựa trên nền công nghệ Grid Computing, đưa ra định hướng xây dựng ứng dụng. + Đọc hiểu và sửa chữa mã nguồn phần phần mềm Ethereal cho phù hợp với các tính năng mới. + Cài đặt và cấu hình thành công bộ Globus Toolkit 3.2 trên môi trường mạng máy tính Linux, cho phép thực thi các ứng dụng Grid. Chương 8. Kết luận - 187 - + Thiết kế và cài đặt các chức năng tìm kiếm máy tính trong Grid, gửi và thực thi các module bắt packet (Sensor), xử lý truy vấn trên các node (PacketInfoProvider), lấy thông tin từ các file dữ liệu. Việc cài đặt thử nghiệm một số chức năng cho thấy tính khả thi của mô hình và khả năng cài đặt thành công của ứng dụng trong môi trường Grid với middleware Globus Toolkit. Ứng dụng Grid NetManager là một dự án lớn, đòi hỏi đầu tư nhiều về công sức và thời gian. Trong quá trình làm luận văn, do phải dành thời gian tìm hiểu công nghệ và làm quen với các môi trường mới (hệ điều hành Linux, công cụ phát triển ứng dụng,…) nên những kết quả trên đây mới chỉ là bước đầu, việc phát triển ứng dụng đòi hỏi có những nghiên cứu, phân tích, thiết kế, cài đặt kỹ lưỡng hơn trong các giai đoạn sau. 8.2. Hướng phát triển, mở rộng của luận văn 8.2.1. Về luận văn Thực hiện các nghiên cứu sâu hơn về công nghệ Grid Computing và bộ GlobusToolkit, về mã nguồn các module, các thuật toán để ứng dụng tốt hơn trong thực tế, từ đó có thể phát triển, xây dựng các thành phần Grid hoặc tham gia các dự án nghiên cứu và triển khai ứng dụng Grid, tiến tới làm chủ công nghệ Grid Computing, đưa sức mạnh tính toán lớn với chi phí thấp vào các dự án nghiên cứu khoa học, kinh tế, thương mại của đất nước, thực hiện theo chủ trương “đi tắt đón đầu”, góp phần phát triển nền khoa học công nghệ nước nhà. 8.2.2. Về ứng dụng Hiện tại ứng dụng mới chỉ dừng lại ở mức thử nghiệm, trong tương lai dự định sẽ phát triển tiếp thành một ứng dụng hoàn chỉnh để có thể áp dụng vào thực tế: + Phát triển các chức năng còn thiếu của các module hiện tại. + Thiết kế, cài đặt các module còn lại trong mô hình ứng dụng. + Phát triển các chức năng quản lý dữ liệu, quản lý Grid để nâng cao hiệu suất Grid. Chương 8. Kết luận - 188 - + Cài đặt ứng dụng theo mô hình Grid Service để tận dụng các khả năng của công nghệ mới. 8.3. Lời kết Trong thời gian có hạn, chúng em mới chỉ nghiên cứu được một phần nhỏ về công nghệ Grid Computing, một lĩnh vực mới mẻ và được xem là công nghệ tính toán nền tảng trong tương lai. Có thể những kiến thức chúng em thu nhận được từ công nghệ chưa nhiều nhưng trong thời gian làm luận văn, nhờ những kỹ năng và kiến thức chúng em thu nhận, rèn luyện được qua quá trình học tập ở trường Đại học, chúng em đã phát triển được nhiều kỹ năng mới như : kỹ năng tìm kiếm thông tin, kỹ năng phân tích và xử lý vấn đề (trouble shooting), tinh thần vượt qua khó khăn, khả năng phối hợp làm việc, khả năng thích nghi với môi trường và công nghệ hoàn toàn mới (Linux và công nghệ Grid Computing) trong thời gian ngắn,…, tạo điều kiện để có những phát triển trong sắp tới. Chúng em nghĩ những gì đã đạt được rất quý cho chúng em sau này và tin rằng việc trang bị những kỹ năng thực tế cũng là một mục đích quan trọng của việc làm luận văn. Chúng em rất vui và hạnh phúc khi đã được thực hiện luận văn này. Xét về các mục tiêu đặt ra ban đầu, các kết quả đạt được cùng với những nỗ lực, cố gắng trong thời gian làm luận văn, chúng em xin tự đánh giá hoàn thành khá xuất sắc luận văn. Phụ lục - 189 - Phụ lục A. Các tiêu chí đánh giá tính khả khi của một dự án Grid Lược đồ đánh giá tính khả khi của ứng dụng được trình bày trong hình 0-1. Nó đưa ra các tiêu chí và các yêu cầu cần thiết của một giải pháp Grid, qua quá trình lượng giá các tiêu chí sẽ cho biết tính khả thi của ứng dụng có cao hay không. Ứng với mỗi tiêu chí có các cột sau: + Tầm vực : Tổng kết các khả năng có thể của tiêu chí. + Độ quan trọng : Trọng số cho biết mức độ quan trọng của tiêu chí khi so sánh với các yêu cầu của ứng dụng. + Nỗ lực : Trọng số cho biết mức độ nỗ lực cần thiết để đạt được tiêu chí đó. + Kỹ năng : Trọng số cho biết trình độ hiện tại của đội ngũ phát triển. + Tài nguyên : Trọng số cho biết khả năng và các kiểu của tài nguyên Grid. + Các ghi chú : Mỗi tiêu chí cần được đánh giá và cho điểm tương ứng theo một độ đo nào đó. Ở đây đề nghị độ đo với các giá trị H (cao), M(vừa), L (thấp), cũng có thể sử dụng các độ đo khác. Lưu ý, có thể thêm các tiêu chí khác vào bảng để đánh giá cho phù hợp với tình hình thực tế. Tiêu chí Trọng số (H-M-L) STT Mục Tầm vực (tăng dần theo nỗ lực) Độ quan trọng Nỗ lực Kỹ năng Tài nguyên Ghi chú 1. Luồng công việc Song song -> Mạng -> Tuần tự 2. Số công việc khác nhau Một công việc -> nhiều công việc. 3. Độ sâu của các công việc con. Không có công việc con -> Rất sâu 4. Kiểu công việc Theo lô -> Đơn giản -> Song song -> Dựa trên EJB -> Phức tạp 5. Mức độ phụ thuộc Hệ điều hành Độc lập -> Phụ thuộc chặt chẽ. 6. Dung lượng bộ nhớ cho Nhỏ -> Lớn Phụ lục - 190 - từng công việc 7. Các DLL Có sẵn tại chỗ -> Cần có DLL đặc biệt 8. Cấu hình trình biên dịch Không cần cấu hình -> Cấu hình chuẩn ->Cần cấu hình đặc biệt. 9. Môi trường thực thi. Không cần -> Môi trường chuẩn ->Cần môi trường đặc biệt. 10. Server ứng dụng Không cần -> JSP -> EJB -> server đặc biệt. 11. Ứng dụng bên ngoài Không cần -> Ứng dụng chuẩn -> Đòi hỏi cấu hình/cài đặt đặc biệt 12. Mức độ phụ thuộc phần cứng Không Cần -> Các Thiết Bị IT Chuẩn -> Các Thiết Bị IT Đặc Biệt -> Các thiết bị đặc biệt khác. 13. Thực thi dự phòng công việc Không cần thiết -> Rất cần thiết. 14. Nhập/Xuất dữ liệu cho công việc. Tham số dòng lệnh -> Hàng đợi thông điệp -> File dữ liệu -> Cơ sở dữ liệu -> APIs 15. Truy cập dữ liệu chi sẻ RO file -> RO DBMS - > RW File -> RW DBMS 16. Không gian lưu trữ tạm thời Nhỏ -> Không giới hạn 17. Băng thông mạng Nhỏ -> LAN tốc độ cao -> WAN 18. Dữ liệu theo thời gian. Dữ liệu luôn hợp lệ -> Dữ liệu thay đổi theo thời gian. 19. Kiểu dữ liệu : Sử dụng bộ mã Unicode thông thường trên mạng SBCS -> Các unicode khác nhau trên DBCS -> Bộ Mã ký tự không xác định được. Bảng 8-1 Các tiêu chí đánh giá tính khả thi của ứng dụng Grid Phụ lục - 191 - B. Định dạng file GWSDL Phần này giới thiệu các bước cơ bản để viết một tài liệu GWSDL đặc tả Grid Service, việc viết một đặc tả GWSDL cũng tương tự như viết một tài liệu WSDL khi phát triển các Web service, gồm các bước: 1. Viết thành phần gốc : . 2. Viết đặc tả . 3. Viết các đặc tả nhập xuất cho các phương thức của PortType. 4. Viết thành phần . Chi tiết các bước sẽ được trình bày dưới đây thông qua một ví dụ nhỏ, viết Grid service MathService với các chức năng đã được giới thiệu ở phần Triển khai cài đặt các Grid Service Bước 1: Viết thành phần gốc <definitions name="MathService" targetNamespace="" xmlns:tns="" xmlns:ogsi="" xmlns:gwsdl="" xmlns:xsd="" xmlns=""> Thành phần có 2 thuộc tính: + name : Tên của file GWSDL, không liên quan đến tên service. + targetNamspace : Khai báo không gian tên của file GWSDL. Điều này có nghĩa là tất cả các portType và phương thức khai báo ở đây đều thuộc không gian tên này. Thành phần này cũng được dùng để khai báo tất cả các không gian tên sử dụng trong tài liệu GWSDL. Tiếp theo, phải khai báo import file OSGI GWSDL chức các khai báo, định nghĩa sẽ sử dụng trong phần sau. <import location="../../ogsi/ogsi.gwsdl" namespace=""/> Bước 2 : Định nghĩa portType với tag Phụ lục - 192 - </gwsdl:portType Tag có 2 thuộc tính: + name : tên của portType + extends : Đây là một sự khác biệt đối với một file WSDL truyền thống. Thuộc tính này cho phép chúng ta mở rộng từ một portType có sẵn, ở đây MathService được mở rộng từ portType GridService chuẩn. Bên trong tag chứa tag cho phép định nghĩa các phương thức của portType các tham số đầu vào (tag ), các giá trị trả về (tag ), các giá trị lỗi (). Lưu ý, tất cả đều có thuộc tính , được định nghĩa dưới đây, xác định những gì cần trao đổi trong lúc gọi phương thức. Bước 3 : Viết đặc tả nhập xuất Lưu ý, tên của message phải trùng với tên đã được khai báo trong phương thức (trong thuộc tính message của các tag , ). Mỗi message gồm nhiều phần , mỗi có một kiểu đại diện cho kiểu của giá trị, được định nghĩa ở bước sau. Bước 4 : Viết các thành phần types> <xsd:schema targetNamespace=" " attributeFormDefault="qualified" elementFormDefault="qualified" xmlns="">

Các file đính kèm theo tài liệu này:

  • pdfgrid_computing_va_quan_tri_mang_9_3636.pdf
Tài liệu liên quan