intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Kiến trúc phần mềm: Chương 2 - TS. Nguyễn Văn Hiệp

Chia sẻ: N N | Ngày: | Loại File: PDF | Số trang:32

74
lượt xem
5
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Kiến trúc phần mềm - Chương 2: Các tactics" cung cấp cho người học các kiến thức: Định nghĩa thuật ngữ, các tactics giải quyết tính sẵn sàng để dùng, các tactics giải quyết tính dễ sử dụng (Usability), các tactic về tính thay đổi được (Modifiability), các tactic giải quyết hiệu suất,... Mời các bạn cùng tham khảo.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Kiến trúc phần mềm: Chương 2 - TS. Nguyễn Văn Hiệp

Chương 2<br /> <br /> CÁC TACTIC<br /> 2.1 Định nghĩa thuật ngữ<br /> 2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng<br /> 2.3 Các tactics giải quyết tính dễ sử dụng (Usability)<br /> 2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)<br /> 2.5 Các tactic giải quyết hiệu suất<br /> 2.6 Các tactic giải quyết an ninh<br /> 2.7 Các tactic giải quyết tính có thể kiểm thử ₫ược<br /> 2.8 Kết chương<br /> <br /> Khoa Khoa học & Kỹ thuật Máy tính<br /> Trường ĐH Bách Khoa Tp.HCM<br /> © 2015<br /> <br /> Môn : Kiến trúc phần mềm<br /> Chương 2 : Các tactic<br /> Slide 1<br /> <br /> 2.1 Định nghĩa thuật ngữ<br /> Tactic<br /> ‰ ta ₫ạt ₫ược các tiêu chí chất lượng thông qua các quyết ₫ịnh thiết<br /> kế.<br /> ‰ Vậy các quyết ₫ịnh thiết kế nào cần thiết cho việc ₫ạt ₫ược 1 chất<br /> lượng cụ thể ?<br /> ‰ Tactic là 1 quyết ₫ịnh thiết kế mà ảnh hưởng ₫ến việc kiểm soát<br /> sự ₫áp ứng 1 thuộc tính chất lượng.<br /> ‰ Chiến lược kiến trúc là tập các tactics ₫ược chọn.<br /> <br /> Khoa Khoa học & Kỹ thuật Máy tính<br /> Trường ĐH Bách Khoa Tp.HCM<br /> © 2015<br /> <br /> Môn : Kiến trúc phần mềm<br /> Chương 2 : Các tactic<br /> Slide 2<br /> <br /> 2.1 Định nghĩa thuật ngữ<br /> ‰<br /> <br /> ‰<br /> <br /> gói các tactics<br /> ƒ các tactic có thể tinh chế các tactic khác<br /> ƒ sự dư thừa ₫ược tinh chế từ dư thừa dữ liệu và dư thừa code<br /> thí dụ<br /> ƒ 1 tactic giải quyết tính sẳn sàng ₫ể dùng sẽ dẫn ₫ến sự dư<br /> thừa.<br /> ƒ Ẩn chứa : ta cũng cần sự ₫ồng bộ giữa các nhân bản ₫ể ₫ảm<br /> bảo copy dư thừa có thể ₫ược dùng nếu bản gốc bị hỏng.<br /> <br /> Khoa Khoa học & Kỹ thuật Máy tính<br /> Trường ĐH Bách Khoa Tp.HCM<br /> © 2015<br /> <br /> Môn : Kiến trúc phần mềm<br /> Chương 2 : Các tactic<br /> Slide 3<br /> <br /> 2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng<br /> ‰<br /> <br /> ‰<br /> ‰<br /> <br /> Độ lệch của lỗi (Failure)<br /> ƒ ₫ộ lệch giữa thực tế chạy so với hành vi chức năng kỳ vọng<br /> ƒ có thể ₫ược quan sát bởi người dùng hệ thống phần mềm<br /> Độ lệch của lỗi và nguyên nhân gây lỗi (fault) : fault : sự kiện có<br /> thể gây ra ₫ộ lệch của lỗi<br /> Các tactics giải quyết tính sẳn sàng ₫ể dùng :<br /> ƒ giữ fault ₫ừng ₫ể nó thành ₫ộ lệch của lỗi<br /> ƒ thực hiện các sửa chữa có thể.<br /> <br /> Khoa Khoa học & Kỹ thuật Máy tính<br /> Trường ĐH Bách Khoa Tp.HCM<br /> © 2015<br /> <br /> Môn : Kiến trúc phần mềm<br /> Chương 2 : Các tactic<br /> Slide 4<br /> <br /> 2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng<br /> Tính sẵn sàng ₫ể dùng (Availability)<br /> <br /> Fault<br /> <br /> Phát hiện<br /> <br /> Sửa chữa &<br /> chuẩn bị phục hồi<br /> <br /> RecoveryReintroduction<br /> <br /> Phòng ngừa<br /> <br /> Fault bị che<br /> Đã sửa chữa<br /> <br /> Ping/Echo<br /> HeartBeat<br /> Exception<br /> <br /> Voting<br /> Thừa chủ ₫ộng<br /> Thừa thụ ₫ộng<br /> Dùng secour<br /> <br /> Khoa Khoa học & Kỹ thuật Máy tính<br /> Trường ĐH Bách Khoa Tp.HCM<br /> © 2015<br /> <br /> bóng ma<br /> ₫ồng bộ hóa<br /> trạng thái<br /> checkpoint/<br /> Rollback<br /> <br /> Không phục vụ<br /> Giao tác<br /> Giám sát process<br /> <br /> Môn : Kiến trúc phần mềm<br /> Chương 2 : Các tactic<br /> Slide 5<br /> <br /> 2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng<br /> Phát hiện fault : Ping/Echo<br /> ‰ thành phần 1 tạo 1 ping cho thành phần 2<br /> ‰ thành phần 1 chờ 1 echo từ thành phần 2<br /> ‰ trả lời trong khoảng thời gian qui ₫ịnh<br /> ‰ Có thể dùng cho kiến trúc gồm 1 nhóm các thành phần : chúng có<br /> trách nhiệm hỗ tương trên 1 tác vụ<br /> ‰ Có thể dùng cho kiến trúc client/server : kiểm thử server và ₫ường<br /> liên lạc<br /> ‰ sự phân cấp các phần tử phát hiện fault sẽ cải tiến việc dùng băng<br /> thông.<br /> <br /> Khoa Khoa học & Kỹ thuật Máy tính<br /> Trường ĐH Bách Khoa Tp.HCM<br /> © 2015<br /> <br /> Môn : Kiến trúc phần mềm<br /> Chương 2 : Các tactic<br /> Slide 6<br /> <br /> 2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng<br /> Phát hiện fault : Heartbeat (nhịp tim)<br /> ‰ Theo ₫ịnh kỳ, thành phần 1 phát thông báo heartbeat.<br /> ‰ thành phần 2 lắng nghe thông báo<br /> ‰ nếu không có heartbeat<br /> ƒ thành phần 1 ₫ược giả ₫ịnh là hỏng<br /> ƒ cảnh bảo cho thành phần 3 ₫ể sửa fault<br /> ‰ thông báo heartbeat cũng có thể chứa dữ liệu.<br /> <br /> Khoa Khoa học & Kỹ thuật Máy tính<br /> Trường ĐH Bách Khoa Tp.HCM<br /> © 2015<br /> <br /> Môn : Kiến trúc phần mềm<br /> Chương 2 : Các tactic<br /> Slide 7<br /> <br /> 2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng<br /> Phát hiện fault : Exceptions<br /> ‰ các loại fault : omission, crash, timing, response<br /> ‰ khi nhận biết 1 loại fault, 1 exception ₫ược tạo ra : kết quả là fault<br /> ₫ược nhận biết<br /> ‰ Trình xử lý exception<br /> ƒ thi hành trong cùng process mà tạo ra exception<br /> ƒ thường thực hiện 1 chuyển dịch ngữ nghĩa của fault ra 1 dạng<br /> dễ xử lý.<br /> <br /> Khoa Khoa học & Kỹ thuật Máy tính<br /> Trường ĐH Bách Khoa Tp.HCM<br /> © 2015<br /> <br /> Môn : Kiến trúc phần mềm<br /> Chương 2 : Các tactic<br /> Slide 8<br /> <br /> 2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng<br /> Phục hồi sau fault : Voting<br /> ‰ các process chạy trên các processor dư thừa nhận thông tin vào<br /> như nhau và tính toán ₫ể tạo kết quả (kỳ vọng như nhau)<br /> ‰ kết quả ₫ược gởi tới voter.<br /> ‰ Nếu voter phát hiện hành vi lệch lạc của 1 processor nào ₫ó -><br /> voter coi nó bị hỏng.<br /> ‰ Phương pháp ₫ược dùng ₫ể sửa chữa<br /> ƒ hoạt ₫ộng lỗi của giải thuật<br /> ƒ ₫ộ hư hỏng của processor<br /> <br /> Khoa Khoa học & Kỹ thuật Máy tính<br /> Trường ĐH Bách Khoa Tp.HCM<br /> © 2015<br /> <br /> Môn : Kiến trúc phần mềm<br /> Chương 2 : Các tactic<br /> Slide 9<br /> <br /> 2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng<br /> Phục hồi sau khi hỏng : sự dư thừa chủ ₫ộng (active redundancy)<br /> ‰ tất cả các thành phần dư thừa ₫ều ₫áp ứng với sự kiện 1 cách<br /> ₫ồng thời -> chúng có cùng trạng thái.<br /> ‰ chỉ dùng 1 ₫áp ứng từ 1 thành phần nào ₫ó.<br /> ‰ downtime : thời gian chuyển sang thành phần ₫ược cập nhật khác<br /> (ms)<br /> ‰ ₫ược dùng trong cấu hình client/server (hệ thống database) : ₫áp<br /> ứng nhanh là quan trọng<br /> ‰ Sự ₫ồng bộ hóa : tất cả thông báo tới 1 thành phần ₫ều phải ₫ược<br /> gởi tới tất cả thành phần dư thừa còn lại.<br /> <br /> Khoa Khoa học & Kỹ thuật Máy tính<br /> Trường ĐH Bách Khoa Tp.HCM<br /> © 2015<br /> <br /> Môn : Kiến trúc phần mềm<br /> Chương 2 : Các tactic<br /> Slide 10<br /> <br />
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2