Một trong những tư tưởng lớn của các hệ phân tán là phân tán hóa các quátrình xử lý thông tin và thực hiện các công việc đó trên các trạm xa nhau.. Để ứng dụng phần lý thuyết đã học về H
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA
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.
Giáo viên hướng dẫn: PGS.TS LÊ VĂN SƠN
Trang 2LỜI MỞ ĐẦU
Hệ tin học phân tán là hệ thống rất đa dạng, đa diện, phức tạp về mặt cấutrúc, là vùng tri thức hiện đại đang được các chuyên gia công nghệ thông tin đặcbiệt quan tâm và đổi mới rất nhanh chóng
Một trong những tư tưởng lớn của các hệ phân tán là phân tán hóa các quátrình xử lý thông tin và thực hiện các công việc đó trên các trạm xa nhau Đó là cơ
sở để xây dựng các hệ ứng dụng lớn như thương mại điện tử, giáo dục điện tử,chính phủ điện tử
Để ứng dụng phần lý thuyết đã học về Hệ tin học phân tán vào trong đề tàicủa tiểu luận, em sẽ trình bày hai vấn đề :
Vấn đề thực hiện từ xa và vai trò của nó trong các hệ thống hiện đại
Ứng dụng lý thuyết về cơ chế điều khiển việc thực hiện từ xa trong bàitoán Hệ kinh doanh từ xa
Em xin chân thành cảm ơn thầy giáo PGS.TS Lê Văn Sơn đã cung cấp
kiến thức và tài liệu để em có thể hoàn thành tiểu luận này
Trong tiểu luận không thể tránh khỏi những thiếu sót về mặt nội dung lẫnhình thức, em rất mong nhận được sự góp ý, đánh giá của Thầy và các anh, chịhọc viên nhằm giúp cho em có một cái nhìn hoàn thiện hơn và bổ sung thêmnhững kiến thức về Hệ phân tán
Học viên thực hiện
Nguyễn Thị Thu Thuỷ
Trang 3MỤC LỤC
I.Đề tài : 1
THỰC HIỆN TỪ XA VÀ VAI TRÒ TRONG HỆ THỐNG HIỆN ĐẠI 1
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 1
LỜI MỞ ĐẦU 2
MỤC LỤC 3
CƠ SỞ LÝ THUYẾT 4
I.Các khái niệm cơ bản 4
.I.1.Hệ thống tin học 4
.I.2.Hệ tin học phân tán 4
I.2.1.Đặc điểm 4
I.2.2.Vấn đề liên quan về mạng máy tính 6
I.2.3.Truyền thông 6
I.2.4.Thông điệp 7
II.Điều khiển truy cập từ xa 7
.II.1.Yêu cầu từ xa 7
.II.2.Đăng ký từ xa 9
CHƯƠNG II 14
ỨNG DỤNG THỰC HIỆN TỪ XA 14
II.1 Tổng quan về E-commerce(thương mại điện tử) 14
II.2 Cơ cấu của E-commerce 14
II.2.1.Hệ thống quản lý khách hàng 15
II.2.2.Hệ thống người quản trị 15
III.Mô hình Client-Server 15
.III.1.Giới thiệu 15
.III.2 Client 17
.III.3.Server 17
IV.Cơ chế điều khiển việc thực hiện từ xa 18
V.Bài toán minh họa 18
.V.1.Mô tả 18
.V.2.Giải quyết yêu cầu từ xa 19
CHƯƠNG III 21
KẾT LUẬN 21
I.Đánh giá kết quả đã thực hiện 21
II.Hạn chế 21
III.Hướng phát triển ứng dụng 21
TÀI LIỆU THAM KHẢO 22
Trang 4CHƯƠNG I
CƠ SỞ LÝ THUYẾT
I Các khái niệm cơ bản
.I.1 Hệ thống tin học
Hệ thống tin học (Informatics System) là hệ thống bao gồm hai phần cơ bản
là phần cứng (hardware) hay là phần vật lý và phần mềm (software) là phần
logic hay là chương trình gắn bó hữu cơ với nhau và có khả năng xử lý thông tin
Hệ thống tin học gồm ba thực thể: phần cứng, phần mềm, dữ liệu
Hình 1 Ba thực thể của hệ tin học
.I.2 Hệ tin học phân tán
Hệ tin học phân tán là hệ thống không chia sẻ bộ nhớ và đồng hồ nhịp Điều đó cho phép phân biệt với một xu hướng tin học khác về phân tán các tính
toán trên nhiều bộ xử lý hay vi xử lý của hệ thống đa bộ xử lý
Hệ tin học phân tán đòi hỏi hệ thống phần cứng của mình phải trang bị bộ nhớ cục bộ Các bộ xử lý trao đổi với nhau thông qua các hệ thống đường truyền khác nhau như là cáp quang, điện thoại, cáp chuyên dụng, bus trao đổi,
Phầ
n mềm
Dữ liệu
Trang 5Hình 2 Bốn thực thể của hệ tin học phân tán
Trong hệ tin học phân tán, cấu hình phần cứng của mạng có thể bao gồmcác bộ xử lý có cấu tạo hoàn toàn khác nhau về khả năng, tốc độ và được thiết kếcho các chức năng không giống nhau Chúng có thể là các bộ vi xử lý, các trạmlàm việc, các máy tính trung và các máy tính điện tử vạn năng loại lớn Chúng cóthể có những tên gọi khác nhau như: trạm, nút mạng, máy tính, căn cứ vào ngữcảnh mà nó được nêu ra
Ngoài hệ thống phần cứng, phần mềm, dữ liệu, thì hệ phân tán còn có hệ thống truyền thông như đã mô tả trong hình trên Điều cơ bản để phân biệt hệ tin
học phân tán với mạng máy tính và hệ điều hành mạng chính là nguyên tắc xâydựng hệ Có bốn điểm cần quan tâm trong nguyên tắc xây dựng một hệ phân tán:
1 Chia sẻ tài nguyên
Một tiến trình trên một trạm nào đó có thể yêucầu được cung cấp tài nguyên dùng chung ở mộttrạm khác
2 Liên lạc Các thực thể của hệ thống có thể trao đổi, liên lạcvới nhau khi hệ thống đã được mắt nối với nhau.
3 Tin cậy
Một trạm của hệ bị sự cố thì không làm ảnhhưởng cho toàn hệ, ngược lại, công việc của trạm
đó được phân cho các trạm khác thực hiện Ngoài
ra, trạm bị sự cố có khả năng phục hồi lại trạngthái trước khi bị sự cố hay trạng thái ban đầu củanó
4 Tăng tốc
Đây là khái niệm mới về phân tán tải Một tính
toán nào đó, nếu chỉ sử dụng một trạm, thì thờigian trả kết quả sẽ rất lớn Tính toán này đượcchia nhỏ và thực hiện song song trên các trạm.Điều này cũng rất cần thiết đối với những trạm bịquá tải
Hệ thống phần mềm
Hệ thống
dữ liệu
Tập hợp phần cứng
Hệ thống truyền thông
Trang 6Một trong những tư tưởng lớn của hệ tin học phân tán là phân tán hóa các quá trình xử lý thông tin và thực hiện công việc đó trên các trạm xa nhau Đó là
những cơ sở căn bản cho việc xây dựng các ứng dụng lớn như: thương mại điện
tử, giáo dục điện tử, chính phủ điện tử, thư viện điện tử số và bệnh viện ảo,
Đặc điểm cần nhấn mạnh của hệ là các hệ xử lý thông tin thành phần:
Không dùng chung hoặc chia sẻ bộ nhớ
Không sử dụng chung đồng hồ xung nhịp
Chúng liên lạc với nhau thông qua mạng truyền thông
Mỗi hệ xử lý có bộ xử lý, bộ nhớ và hệ điều hành riêng của nó
Thành phần của hệ phân tán bao gồm các hệ thống cục bộ trong đó mỗi mộthay nhiều hệ thống phát các yêu cầu thông tin còn các hệ khác trả lời các yêu cầu
có liên quan đến phần dữ liệu của mình Nói một cách tổng quát là trong hệ luônluôn diễn ra việc thực hiện các công việc do các hệ thống yêu cầu Các hệ thốngtruyền thống như hệ rời rạc hay tập trung không thể đáp ứng nhanh chóng vàchính xác các yêu cầu thông tin từ xa với lưu lượng thông tin lớn
I.2.2 Vấn đề liên quan về mạng máy tính
Liên lạc là thuật ngữ được sử dụng để chỉ các tác vụ trao đổi thông tin giữacác thực thể thuộc hệ thống Trong đó, thực thể gửi được gọi là trạm phát; trạmphát sẽ phát thông tin cho một hoặc nhiều thực thể nhận được gọi là trạm nhận.Thông tin trong quá trình gửi nhận gọi là thông điệp (message)
Vấn đề trỏ thông tin, trong trường hợp người sử dụng mạng muốn liên hệvới nhau, họ phải sử dụng hệ thống tên quy ước hay còn gọi là địa chỉ mạng Cácđịa chỉ này tuân theo nguyên tắc xây dựng nhất định và không trùng nhau Trongmạng, một người sử dụng nào đó có thể sử dụng bất cứ trạm nào để liên lạc vớingười sử dụng mà họ muốn
I.2.3 Truyền thông
Hệ tin học phân tán là một hệ thống tin học kết hợp với hệ thống truyềnthông tạo thành một hệ thống nhất Điều ta quan tâm là vấn đề truyền thông
Truyền thông là sự trao đổi thông tin bằng hình thức thông điệp giữa cácđối tượng gởi và nhận Vấn đề trao đổi thông tin có thể thực hiện dưới dạng từng
đôi một gọi là đối thoại hoặc một đối tượng gửi cho nhiều đối tượng nhận gọi là hội thảo.
Trang 7I.2.4 Thông điệp
Người ta có thể chia cắt thông tin truyền theo các kiểu khác nhau, chungquy lại thì có thể có hai kiểu là chia cắt logic và chia cắt vật lý
Chia cắt logic: Khi các thông điệp bao gồm tập hợp thông tin gắn bó vớinhau theo một logic nào đó nhứ bản ghi, têp tin… Trong trường hợp
đó, kích cở của thông điệp không phải là đại lượng cố định Để truyềncác thông điệp này người ta thường phải có thêm những thông tin điềukhiển như giá trị số chỉ kích cỡ, tín hiệu bắt đầu và kết thúc một thôngđiệp
Chia cắt vật lý: Các thông điệp thường được phân nhóm nhằm thỏa mãnnhững ràng buộc đương truyền hoặc lưu trữ Những thông điệp này cònđược gọi là các gói thông tin với kích cỡ cố định Trước khi phát thôngtin vào đường truyền, trạm phát phải chia thông tin thành các gói theonhững quy ước chặc chẽ Quá trình này được tiến hành tự động từ cáctầng thấp và người sử dụng không thể nhận biết
Thông tin cần thiết trong quá trình nhận dạng tự động của hệ thống đườngtruyền cũng được hai bên phát và nhận trao đổi cho nhau như kích cỡ của thôngđiệp, tín hiệu đầu và cuối, mã lỗi, cách khắc phục lỗi, địa chỉ nguồn, địa chỉ đích…
Ở tầng i nào đó, các thông điệp của hai tầng kế cận i-1 và i+1 (nếu có) được tiếpnhận, phân chia thành những đơn vị thông tin mới với cấu trúc xác định và gửitiếp
II Điều khiển truy cập từ xa
Trong phần này chủ yếu là giới thiệu các bước để thực hiện việc điều khiển
từ xa thông qua bài toán về Hệ kinh doanh từ xa trong giáo trình hệ tin học phântán nhằm làm cơ sở để áp dụng phân tích trình bày trong ví dụ minh họa ở phầnsau
.II.1 Yêu cầu từ xa
Giả sử một khách hàng muốn được cung cấp thông tin và thể hiện yêu cầu
đó qua một truy vấn Bên kia, sau khi tiếp nhận, việc truy tìm trong cơ sở dữ liệuđược tiến hành Nếu có thông tin cần tìm thì thông tin đó sẽ được chuyển lại chongười yêu cầu
Theo bài toán, ví dụ có một khách ở thành phố A muốn biết thông tin vềgiá cả của một mặt hàng do một bộ phận ở thành phố B ở xa quản lý Để đáp ứngđược yêu cầu này đòi hỏi hệ thống phải có khả năng thực hiện hàng loạt các thaotác được xác định:
Trang 8 Nhận biết thông tin nằm tại vị trí nào (gọi là vấn đề trỏ thông tin); tức làphải biến đổi tên của thành phố B thành tên của hệ thống cục bộ quản lýthông tin của thành phố A để hệ thống viễn thông có thể nhận dạngđược và có thể gửi thông tin đến đúng địa chỉ Tên của hệ thống cục bộphải là tên duy nhất và không được tùy tiện thay đổi.
Sau khi đã trỏ đúng vào địa chỉ chứa thông tin, hệ phải có khả năng tiếpnhận và ghi lại các yêu cầu chỉ dẫn
Biên dịch các yêu cầu này thành dạng lệnh có thể thực hiện được để cóthể truy tìm thông tin
Thực hiện công việc mang tính cục bộ hệ thống như: kiểm tra quyềntruy cập thông tin, thống kê số lượng người truy cập, lập hóa đơn, thanhtoán…
Nếu tìm được thông tin theo yêu cầu thì gửi nó cho hệ thống yêu cầu.Sau đây là cơ chế hoạt động có thể cài đặt trong A và B theo mô hìnhClient/Server:
Phatyeucau(B,yc)
Nhanlai(kq)
Lặp lại Nhanyeucau(s, nh)
Nếu (yêu cầu hợp thức) thì
Bắt đầu Tracuucsdl Thongke Guiketqua (s, kq) Kết thúc
Nếu không Guithongbao (s,tb)Cho đến khi đúng
Trường hợp tra cứu vừa nêu là đơn giản bởi vì phép toán diễn ra độc lập
Có rất nhiều trường hợp phức tạp hơn, trong đó một phép tra cứu lại phụ thuộc vàocác phép xử lý khác trước đó Đây là giao dịch không thể tiến hành bằng một lệnhhoặc là một hàm mà phải được tiến hành bằng thủ tục truy vấn Thủ tục này có khảnăng liên kết tự động các tra cứu sơ đẳng lại với nhau
Chương trình truy vấn đầy đủ có thể được cài đặt tại máy Client hoặc tạimáy Server Hai giải pháp này khác nhau ở bản chất và khối lượng thông tin traođổi giữa các trạm với nhau
Trang 9Một trong những vấn đề cần phải quan tâm là độ tin cậy của thông tin.Thông tin là đúng tại thời điểm mà Server đọc nó, nhưng có thể sai khi Clientnhận được; điều này liên quan đến việc làm tươi thông tin trong CSDL Nói mộtcách tổng quát là cần phải có những giải pháp hữu hiệu cho việc truy cập đồngthời vào dữ liệu dùng chung.
Trong thực tế, những trường hợp nêu trên hoàn toàn có thể diễn ra ví dụnhư có một khách hàng tại A đề nghị mua hàng hóa H tại B và C Anh ta có thểnhận được lời chấp nhận với một lượng cụ thể nhưng không có hoặc không đủ tại
B và C Trong khi truy cập để báo cho khách thì số lượng này cũng vừa được cậpnhật Nói tóm lại, khách nhận được thông tin mà trên thực tế không còn tồn tạinữa
Trang 10đăng ký (ký hợp đồng) được tiến hành xuất phát từ khách hàng ở thành phố Angay trên hệ cục bộ của bộ phận tại thành phố này.
Để đáp ứng yêu cầu đăng ký từ xa vừa nêu trên, ta có thể cài đặt tại hệ cục
bộ ở A một đoạn chương trình như sau:
Đoạn chương trình trên cho thấy rằng sau khi nhận được thông tin về trạngthái hàng hóa tại B và phương tiện vận tải tại C chương trình sẽ lần lượt thực hiệncác lệnh sau:
1 Đăng ký sơ bộ mua hàng tại B trong ngày t.
2 Nếu việc đăng ký đó thành công thì đăng ký tiếp phương tiện vận tải tại C.
3 Lặp lại cho đến khi hết thời hạn cho phép.
Khi thực hiện chương trình tại A sẽ kích hoạt việc thực hiện chương trình ở
B Tương tự như vậy, khi ta thực hiện chương trình đăng ký từ B sẽ là nguyênnhân của việc thực hiện chương trình tại C
Sau khi xem xét kỹ đoạn chương trình nêu trên, người ta nhận thấy rằngphương pháp được thể hiện bằng đoạn chương trình trên sẽ có tác dụng chỉ với
một cặp <đăng ký hàng hóa, đăng ký phương tiện> duy nhất Việc đăng ký như
vậy là đơn trị và khó sử dụng cho công việc thực tế
Ok:=TrueKết thúcNếu không huy_dang_ky(AB,t)
t:=sau(t)
Kết thúc
…
Trang 11Nếu ta vận hành nhiều chương trình cùng một lúc thì hậu quả diễn ra khánghiêm trọng Do việc đăng ký hàng hóa chỉ diễn ra sơ bộ, cho nên nó có thể bịđăng ký bởi NSD khác Trong trường hợp đó danh sách hàng hóa mà ta cứ tưởng
là chính thức trở thành hàng hóa ảo
Nhằm khắc phục tình hình nêu trên, người ta xây dựng chương trình cài đặttại hệ cục bộ A theo một kiểu khác như sau:
Rõ ràng, ở đoạn chương trình trên ta có hàm nguyên thủy
de_nghi(B,DS(hh,t), danhsach(pt,t)) cho phép xác định tại B loại hàng hóa theo
yêu cầu, số lượng, ngày chuyên chở đến C và phương tiện chuyên chở… Như vậy,
hàm nguyên thủy dang_ky_hang_hoa(AB,hhl,t) không còn cho kết quả sơ bộ như
trước đây Giải pháp này cho phép rút ngắn được số lần truy cập và các thông điệp
có thể, nhưng nó chỉ đúng khi mà giữa hai phép tra_loi (bang(hhl,ptl,t)) và dang_ky_hang_hoa(AB,hhl,t) không có đăng ký nào khác chen vào Vì thế ta phải
cài then cho đoạn chương trình trên bằng hai động tác:
Hay nói cách khác là ta áp dụng nguyên lý loại trừ tương hỗ giống tronglĩnh vực hệ điều hành các máy tính tập trung Tất cả các truy cập vào trạm dữ liệu
Ok:=TrueKết thúcNếu không t:=sau(t)
Kết thúc
…
…then_cai(B)
…mo_then_cai(B)
…
Trang 12từ trạm A cần phải đảm bảo được bao bởi then_cai(A) và mo_then_cai(A) và tương tự như vậy tại C bằng then_cai(C) và mo_then_cai(C) Do đó, việc gọi thủ tục dang_ky_hang_hoa(AB,hhl,t) sẽ đồng bộ dữ liệu ngay cả trên trạm cục bộ A và
đương nhiên trạm này cũng được đóng khung
Việc tổ chức đăng ký từ xa như trên cũng đặt ra cho chúng ta nhiều vấn đềcần phải giải quyết Sau đây, ta sẽ xem xét các hệ quả đó
1 Các yêu cầu hợp đồng mua bán và chuyên chở kiểu như trên diễn rađồng thời theo chiều A-B và B-A có thể dẫn đến bế tắc
Thực tế cho thấy các dãy:
được thực hiện lần lượt trên A và B
2 Tình hình trên có thể được hoàn thiện nếu loại trừ tổng quát cho việc truycập vào dữ liệu của một trạm là không cần thiết Ta chỉ cần then cài và mở then cóchọn lọc trên các dữ liệu trên các dữ liệu liên quan đến hàng hóa hay phương tiệnvận chuyển
Như vậy, ta phải đưa tham số mới trong các hàm nguyên thủy Then_cai và Mo_then_cai nhằm xác định chính xác dữ liệu nào cần phải khống chế khi truy
cập
Chính vì vậy, giải pháp nêu trên cần phải bổ sung thêm:
then_cai(B), then_cai(A), then_cai(A), then_cai(B)
Trang 13Như vậy, loại trừ tương hỗ được áp dụng với từng dữ liệu riêng biệt và thực
sự tránh được bế tắc
3 Bây giờ ta giả sử rằng HKDTX cho phép hợp đồng ở cả hai thành phố A
và B Ta có thể gặp bế tắc dữ liệu liên quan đến hàng hóa Một trong những biệnpháp phòng chống hiện tượng nêu trên là đặt toàn bộ chương trình đăng ký hợpđồng vào đoạn găng trải đến tận tất cả các trạm có liên quan Nhưng biện pháp này
tỏ ra không hiệu quả nhiều và rất tốn kém Người ta cũng đã nghiên cứu một vàigiải pháp cho phép thực hiện song song các chương trình đăng ký mua bán hànghóa
Điểm chung nhất của các giải pháp này là:
Phát hiện xung đột trong hệ
Loại bỏ ra khỏi quá trình thực hiện các chương trình phát sinh xungđột
Cho phép tái lập lại việc thực hiện các chương trình bị loại bỏ do xungđột
Ok:=TrueKết thúcNếu không t:=sau(t)
Kết thúc
Mo_then_cai(hd, A)