1. Trang chủ
  2. » Công Nghệ Thông Tin

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

32 65 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 32
Dung lượng 221,53 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Chương 2 - Các Tactic gồm 8 phần trình bày các nội dung: Đị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, các tactic giải quyết an ninh, các tactic giải quyết tính có thể kiểm thử được. Mời các bạn cùng tham khảo.

Trang 1

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

2.6 Các tactic giải quyết an ninh 2.7 Các tactic giải quyết tính có thể kiểm thử ₫ược 2.8 Kết chương

Trang 2

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

thừa

bảo copy dư thừa có thể ₫ược dùng nếu bản gốc bị hỏng

2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng

thể gây ra ₫ộ lệch của lỗi

Trang 3

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

Sửa chữa &

chuẩn bị phục hồi

VotingThừa chủ ₫ộngThừa thụ ₫ộngDùng secour

Reintroduction

Recovery-bóng ma

₫ồng bộ hóa trạng tháicheckpoint/

Rollback

Phòng ngừa

Không phục vụGiao tácGiám sát process

Đã sửa chữa

2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng

Phát hiện fault : Ping/Echo

‰ trả lời trong khoảng thời gian qui ₫ịnh

trách nhiệm hỗ tương trên 1 tác vụ

liên lạc

thông

Trang 4

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 7

2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng

Phát hiện fault : Heartbeat (nhịp tim)

2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng

Phát hiện fault : Exceptions

‰ khi nhận biết 1 loại fault, 1 exception ₫ược tạo ra : kết quả là fault

₫ược nhận biết

dễ xử lý

Trang 5

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 9

2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng

Phục hồi sau fault : Voting

như nhau và tính toán ₫ể tạo kết quả (kỳ vọng như nhau)

voter coi nó bị hỏng

2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng

Phục hồi sau khi hỏng : sự dư thừa chủ ₫ộng (active redundancy)

gởi tới tất cả thành phần dư thừa còn lại

Trang 6

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 11

2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng

Phục hồi sau khi hỏng : sự dư thừa thụ ₫ộng (passive redundancy)

updates mà chúng phải làm

không trước khi phục hồi dịch vụ

dùng

2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng

Phục hồi sau khi hỏng : phần tử dự phòng (spare)

thay thế nhiều thành phần hỏng hóc khác nhau :

ƒ khi failure xảy ra, ta khởi tạo lại trạng thái cho nó

thái lên thiết bị vĩnh cửu (disk)

Trang 7

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 13

2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng

Tái tạo fault : hoạt ₫ộng bóng ma

shadow

hành

2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng

Tái tạo fault : ₫ồng bộ hóa lại trạng thái

nhật trạng thái của mình trước khi trở lại làm việc

Trang 8

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 15

2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng

Tái tạo fault : checkpoint/rollback

không nhất quán có thể phát hiện ₫ược Hệ thống ₫ược phục hồi bằng :

2.2 Các tactics giải quyết tính sẳn sàng ₫ể dùng

sát sẽ xóa process không làm việc và tạo mới 1 instance khác thay thế : phải ₫ược khởi tạo với trạng thái phù hợp như trong tactic dùng phần tự dự phòng

Trang 9

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

+ liên quan tới các tactic giải quyết tính có thể hiệu chỉnh

2.3 Các tactics giải quyết tính dễ sử dụng (Usability)

các tactic tại thời ₫iểm chạy

Trang 10

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

Các tactic tại thời ₫iểm thiết kế

Tách giao tiếp useryêu cầu của user

Cung cấp phản hồi và hỗ trợphù hợp cho user

chủ ₫ộng user

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

trong việc hiện thực, kiểm thử, hiệu chỉnh và phân phối

thay ₫ổi

tới các module bị khoanh vùng

phân phối và chi phí

Trang 11

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 21

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

Tính thay ₫ổi ₫ược

Khoanh vùng các thay ₫ổi

Nhất quán ngữ nghĩa

dự ₫oán các thay ₫ổitổng quát hóa moduledịch vu chung trừu tượng

Ngừa các hiệu ứng dây chuyền

Ẩn thông tinDuy trì giao tiếp tồn tạihạn chế ₫ường liên lạcdùng ptử trung gian

Trì hoản thời ₫iểm liên kết

₫ăng ký tại td chạyfile cấu hình

Đa xạThay thế thành phầnĐính vào các gt ₫ã có

Các thay

₫ổi tới

Đã thay ₫ổi, kiểm thử, phân phối

trong thời gian

và kinh phíxác ₫ịnh

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

Khoanh vùng các thay ₫ổi : duy trì tính nhất quán ngữ nghĩa

trong 1 module

dù có hay không sự dựa dẫm quá nhiều vào những module khác

sự nhất quán ngữ nghĩa

Trang 12

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 23

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

Khoanh vùng các thay ₫ổi : dịch vụ chung trừu tượng

trong từng module dùng chúng

hưởng ₫ến các user khác

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

Khoanh vùng các thay ₫ổi : tiên ₫oán các thay ₫ổi ₫ược chờ ₫ợi

giá việc gán các trách nhiệm

các module cần thay ₫ổi ?

module ?

Trang 13

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 25

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

Khoanh vùng các thay ₫ổi : tổng quát hóa module chức năng

rộng các chức năng dựa vào kiểu thông tin nhập

nhập như là các chương trình trong ngôn ngữ thông dịch ₫ó

ngôn ngữ nhập

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

Phòng ngữa các hiệu ứng lan truyền

bị khoanh vùng

trách nhiệm cần ₫ược ₫iều chỉnh ₫ể thực hiện ₫ược sự thay

₫ổi

module có các trách nhiệm vẫn không ₫ổi nhưng sự hiện thực cần ₫ược thay ₫ổi ₫ể phù hợp với các module bị tác ₫ộng trực tiếp

Trang 14

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 27

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

Các hiệu ứng lan truyền

vào các module liên quan trực tiếp ₫ến sự thay ₫ổi

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

Các kiểu phụ thuộc

interface, location of A, quality of service, existence of A, resource behavior of A

Trang 15

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

nhất quán nhau

vọng của B

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

Sự phụ thuộc ngữ nghĩa

cần ₫ược nhất quán với kỳ vọng của B

kỳ vọng của B

Trang 16

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

trước

nhất quán với các kỳ vọng của B

Trang 17

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

quan ₫ến chất lượng phải nhất quán với kỳ vọng của B

phục vụ

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

Các tactic ₫ể phòng ngừa hiệu ứng lan truyền

‰ duy trì các interface tồn tại

Trang 18

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

nào ₫ể ẩn và thông tin nào ₫ể public

lan truyền từ module này sang module khác

thay ₫ổi này làm cơ sở cho việc phân rã)

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

Duy trùy các interface luôn tồn tại

của A sẽ làm B không thay ₫ổi

Trang 19

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

-> giảm ₫ược hiệu ứng lan truyền

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

Dùng phần tử trung gian

Trang 20

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 39

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

Trì hoản thời gian liên kết

khác nhau

cấp input mà ảnh hưởng ₫ến hành vi

2.4 Các tactic về tính thay ₫ổi ₫ược (Modifiability)

Các tactic mà ảnh hưởng tại thởi ₫iểm load/chạy

₫ể quản lý việc ₫ăng ký

‰ file cấu hình : thiết lập các thông số tại thời ₫iểm bắt ₫ầu

chạy các process ₫ộc lập

Trang 21

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 41

2.5 Các tactic giải quyết hiệu suất

gian ràng buộc

₫ổi trạng thái có ý nghĩa,

với nó

2.5 Các tactic giải quyết hiệu suất

Hiệu suất

Xin tài nguyên

Tăng hiệu quả tính Giảm chí phí tính Quản lý tốc ₫ộ event

Quản lý tài nguyên

Tạo sự ₫ồng thời Quản lý các copy Tăng tài nguyên có sẵn

Trọng tài tài nguyên

Trang 22

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 43

2.5 Các tactic giải quyết hiệu suất

Tactic xin tài nguyên

dòng thường xuyên ra sao)

2.5 Các tactic giải quyết hiệu suất

Giảm số tài nguyên cần dùng

ƒ việc xử lý liên quan ₫ến giải thuật -> cải tiến giải thuật

nhu cầu tính toán của nó

Trang 23

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 45

2.5 Các tactic giải quyết hiệu suất

Giảm số sự kiện ₫ược xử lý

sát các biến môi trường

của các sự kiện ₫ược tạo ra từ ngoài thì các request ₫ợi có thể

₫ược lấy mẫu ở tần số thấp hơn (có thể mất request)

₫ược dùng cho mỗi sự kiện

hàng ₫ợi

2.5 Các tactic giải quyết hiệu suất

Quản lý tài nguyên

nhau (tạo thêm thread khi cần)

hóa

nhanh hơn, thì sẽ có thêm processor và bộ nhớ

Trang 24

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 47

2.5 Các tactic giải quyết hiệu suất

Trọng tài phân xử tài nguyên

lịch thích hợp

của tactic ₫ược chọn

ƒ tối thiểu ₫ộ trễ

sàng

Trang 25

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

1 khoảng thời gian thi hành

2.6 Các tactic giải quyết an ninh

Trang 26

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

hay phục hồi sau tấn công

Phục hồi xem Availability Audit trail

2.6 Các tactic giải quyết an ninh

Trang 27

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

trong quá khứ

số port

liên hợp các cảm biến, database chứa sự kiện ₫ể phân tích, tool ₫ể phân tích và lập báo cáo offline, console kiểm soát ₫ểhiệu chỉnh các hoạt ₫ộng phát hiện xâm phạm

2.6 Các tactic giải quyết an ninh

Các phần tử phát hiện sự xâm phạm

phạm

Trang 28

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 55

2.6 Các tactic giải quyết an ninh

Phục hồi sau khi bị tấn công

: tactic giải quyết tính sẵn sàng ₫ể dùng

vụ "domain name", dữ liệu cá nhân người dùng

ƒ duy trì "audit trail"

2.6 Các tactic giải quyết an ninh

Audi trail

tin nhận dạng

request cụ thể ₫ã ₫ược thực hiện

tin cậy

Trang 29

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 57

2.7 Các tactic giải quyết tính có thể kiểm thử ₫ược

phần mềm ₫ã hoàn thành

nhưng rất có giá trị : 40% chi phí phát triển phần mềm

Giám sát bên trong

Trang 30

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 59

2.7 Các tactic giải quyết tính có thể kiểm thử ₫ược

Các tactic I/O : record/playback

+ cho phép ₫ầu vào kiểm thử cho 1 thành phần+ cho kết quả xuất kiểm thử ₫ể so sánh sau ₫ó

2.7 Các tactic giải quyết tính có thể kiểm thử ₫ược

Các tactic I/O : tách interface với hiện thực

khác nhau

cần có thành phần thật

hoạt ₫ộng như tool kiểm thử cho phần còn lại của hệ thống

Trang 31

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

© 2015

Môn : Kiến trúc phần mềm

Chương 2 : Các tactic

Slide 61

2.7 Các tactic giải quyết tính có thể kiểm thử ₫ược

Các tactic I/O : ₫ặc biệt hóa ₫ường truy xuất/interfcae

nhau cho các thành phần

chức năng ₫òi hỏi

ƒ chức năng kiểm thử phải "in place" ₫ể quan sát các ₫áp ứng

2.7 Các tactic giải quyết tính có thể kiểm thử ₫ược

Tactic giám sát bên trong

ninh, có thể ₫ược truy xuất thông qua interface (interface vĩnh cữu hay tạm ₫ược tạo ra cho kiểm thử)

+ chí phí/nổ lực kiểm thử thêm nữa+ ₫ộ có thể thấy ₫ược gia tăng

Trang 32

Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM

phi chức năng chính yếu của phần mềm như tính sẵn sàng ₫ể sửdụng, tính dễ sử dụng, tính thay ₫ổi ₫ược, tính hiệu quả, tính cóthể kiểm thử, an ninh

Ngày đăng: 11/01/2020, 20:15

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm