Xem mẫu
- Chương I Giới thiệu Internet và Intranet.........................................................................3
1.1. Kiến trúc logic mạng máy tính.......................................................................................3
1.1.1. Khái niệm cơ bản về kiến trúc máy tính................................................................3
1.1.2. Kiến trúc Peer-to-Peer và các hệ thống tính toán...................................................4
1.1.3 Kiến trúc khách/chủ cổ điển....................................................................................5
1.1.4. Kiến trúc khách chủ dựa Web...............................................................................10
1.2. Nền tảng của các Công nghệ mạng.............................................................................12
1.2.1. Sự tương tác với Webserver..................................................................................12
1.2.2. Xử lý thông tin phân tán trên nền tảng cả các chương trình dễ biến đổi...........15
1.2.3. Truy xuất tới cơ sở dữ liệu quản hệ....................................................................23
Chương II Ngôn ngữ HTML..........................................................................................28
2.1 Khái niệm về ngôn ngữ HTML.....................................................................................28
2.2 Lập trình Web với ngôn ngữ HTML.............................................................................28
2.2.1 Các thành phần cơ bản của html............................................................................28
2.2.2 Cấu trúc tệp HTML................................................................................................29
2.3 Các tag cơ bản trong HTML..........................................................................................29
2.3.1. Thẻ giải thích.........................................................................................................29
2.3.2 Các thẻ định dạng văn bản.....................................................................................29
2.3.4 Một số kí tự đặc biệt trong HTML........................................................................33
2.3.5 Các tag dùng thiết kế bảng.....................................................................................33
2.3.6 Các tag tạo Frame....................................................................................................34
2.3.7 Các tag dùng tạo Form............................................................................................34
Chương III Cascading style sheets..................................................................................36
2.1 Căn bản về CSS (Cascading style sheets)......................................................................36
2.2 Cú pháp CSS...................................................................................................................36
2.2.1 Phần tử chọn – Seclector........................................................................................36
2.2.2 Các phần tử lựa chọn lớp giả động.......................................................................40
2.2.3 Thuộc tính, miêu tả, qui tắc....................................................................................42
2.3 Bổ sung CSS vào tài liệu HTML..................................................................................45
2.4. Các mô hình trực quan...................................................................................................46
Chương IV Ngôn ngữ kịch bản Javascript.....................................................................49
4.1. Giới thiệu ngôn ngữ kịch bản Javascrip.......................................................................49
4.2. Ngôn ngữ kich ban JavaScript.......................................................................................51
̣ ̉
4.2.1 Kiêu dữ liêu.............................................................................................................51
̉ ̣
́
4.2.2 Khai báo biên...........................................................................................................51
4.2.3. Cac toan tử JavaScript ...........................................................................................52
́ ́
4.2.4. Cac câu lênh rẽ nhanh và lăp..................................................................................54
́ ̣ ́ ̣
4.2.3. Cac đôi tương trong JavaScript..............................................................................60
́ ́
̀
4.2.4. Ham.........................................................................................................................67
4.2.5. Lâp trinh hướng đôi tương trong JavaScript..............................................................70
̣ ̀ ́
4.2.5.1 Tao môt đôi tương ................................................................................................70
̣ ̣ ́
4.2.6. Lập trình với các đối tương của trình duyệt........................................................71
4.2.7. HTML Forms..........................................................................................................77
Chương V Active Server Pages......................................................................................90
5.1.Giới thiệu công nghệ ASP.............................................................................................90
5.2 Cú pháp và thao tác cơ bản............................................................................................90
5.2.1. Cách chèn các đoạn mã VBScript vào trong trang web.........................................90
5.2.2. Chú thích.................................................................................................................91
5.2.5. Các toán tử..............................................................................................................92
5.2.4. Hằng và biến..........................................................................................................92
1
- 5.3. Các câu lệnh..................................................................................................................93
5.3.1. Lệnh rẽ nhánh........................................................................................................93
5.3.2. Lệnh lặp xác định...................................................................................................94
5.3.3. Vòng lặp không xác định........................................................................................95
5.4 Hàm và thủ tục...............................................................................................................97
5.4.1. Hàm.........................................................................................................................97
5.4.2. Thủ tục...................................................................................................................97
5.4.3. Ví dụ sử dụng hàm và thủ tục (Giaỉ phương trình bậc 2 một ẩn số).................97
5.4.2. MỘT SỐ HÀM THƯỜNG DÙNG TRONG VBSCRIPT....................................98
5.4.3. ĐOẠN MÃ DÙNG CHUNG................................................................................100
5.5. Tệp cấu hình GLOBAL.ASA.....................................................................................101
5.5.1. Các sự kiện...........................................................................................................101
5.5.2. Khai báo đối tương..............................................................................................101
5.5.3. Một file cấu hình Global.asa đơn giản................................................................102
5.5.2. TẬP HỢP (COLLECTION) TRONG ASP..........................................................102
5.5.2.1. Khái niệm..........................................................................................................102
5.5.2.2. Cách truy cập các phần tử trong tập hơp.........................................................103
5.6. Xử lý các FORM dữ liệu..........................................................................................104
5.6.1. Mở đầu.................................................................................................................104
5.6.2. Sử dụng phương thức GET.................................................................................104
5.6.3. Sử dụng phương thức POST...............................................................................105
5.7. Các đối tương cài sẵn trong ASP...............................................................................107
5.7.1. Các đối tương ASP..............................................................................................107
5.7.2. Đối tương REQUEST..........................................................................................107
5.7.3. Đối tương RESPONSE........................................................................................110
5.7.4. Đối tương APPLICATION..................................................................................111
5.7.5. ĐỐI TƯỢNG SESSION......................................................................................113
5.7.6. ĐỐI TƯỢNG SERVER.......................................................................................115
5.8. COOKIES....................................................................................................................118
5.8.1. Khái niệm COOKIES...........................................................................................118
5.8.2. Thiết lập COOKIES.............................................................................................118
5.8.3. Lấy giá trị của COOKIES....................................................................................118
5.8.4. Thư mục COOKIES.............................................................................................118
5.8.5. Kiểm tra xem COOKIES có dùng khóa không....................................................119
5.9 Giới thiệu ADO và các kết nối cơ sở dữ liệu............................................................119
5.9.1 Giới thiệu..............................................................................................................119
5.9.2 Kế nối với cơ sở dữ liệu......................................................................................119
5.9.3 Các đối tương của ADO.......................................................................................120
2
- Chương I Giới thiệu Internet và Intranet
1.1. Kiến trúc logic mạng máy tính
1.1.1. Khái niệm cơ bản về kiến trúc máy tính
Với sự phát triển không ngừng về qui mô và độ phúc tạp của các mô hình mạng máy tính
đã dẫn đến sự phức tạp trong công nghệ vận hành của các mạng này, và hiểu đươc sự
phức tạp này là yếu tố cần thiết cho phép tổ chức bảo vệ hiệu quả nguồn tài nguyên thông
tin. Công nghệ vận hành của bất kì hệ thống nào đều phụ thuộc vào kiến trúc miêu tả các
thành phần của công nghệ, các chức năng và mỗi quan hệ của chúng.
Rất khó để hiểu và phân tích kiến trúc của hệ thống phúc tạp một cách trọn vẹn. Để giảm
độ phức tạp của sự phân tích, một kiến trúc sẽ đươc cân nhắc ở các mức khác nhau. Điều
này rất có ích để xem xét mỗi mức với các chức năng trừu tương ẩn đi hiết tiết của sự
thực thi các thành phần của kiến trúc.
Khi nghiên cứu kiên truc cua cac mang may tinh, việc phân biêt giữa những kiên truc vât lý
́ ́ ̉ ́ ̣ ́ ́ ̣ ́ ́ ̣
và kiên truc logic rất cần thiết. Kiên truc vât lý miêu tả câu truc, chức năng và những môi
́ ́ ́ ́ ̣ ̉ ́ ́ ́
quan hệ trung gian giữa các giao thức thực thi tai tâng dưới và cac tâng giữa trong mô hinh
̣ ̀ ́ ̀ ̀
phân lớp chuân cua sự tương tác mang (mô hinh tham chiêu OSI, một cách cụ thể giao thức
̉ ̉ ̣ ̀ ́
của tầng vật lý, liên kết dữ liệu, mạng, giao vận và tầng phiên). Vì vây, kiên truc vât lý
̣ ́ ́ ̣
không chỉ phụ thuôc vao kiên truc, chức năng và môi quan hệ qua lai cua phân cứng mang,
̣ ̀ ́ ́ ́ ̣ ̉ ̀ ̣
mà con phụ thuôc sự thực thi phần mềm cua cac giao thức tai tâng thâp và tâng giữa cua mô
̀ ̣ ̉ ́ ̣ ̀ ́ ̀ ̉
hinh OSI. Để có thể phân tich chi tiết về kiến trúc vật lý, cần phải xem xét tại tất cả các
̀
mức, tương ứng với tầng vật lý, liên kết dữ liệu, mạng, giao vận và phiên của mô hình
phân lớp chuẩn.
Hình. 1.1: Mối quan hệ giữa lớp OSI và kiểu kiến trúc mạng
3
- Kiên truc logic miêu tả câu truc, nhiêm vụ và môi quan hệ của phân mêm thực thi cac giao
́ ́ ́ ́ ̣ ́ ̀ ̀ ́
thức ở tâng trên, đăc biêt cac giao thức ở tâng trinh diên và tâng ứng dung. Kiến trúc này
̀ ̣ ̣ ́ ̀ ̀ ̃ ̀ ̣
mang lại công nghệ tích hơp và hơp nhất của mạng máy tính và có thể xây dựng các mức
trừu tương khác nhau của kiến trúc vật lý.
Hiện nay, có một vài loại kiến trúc mạng logic như sau:
́ ́ ̀
Kiên truc ngang hang
Kiên truc khach/chủ cổ điên
́ ́ ́ ̉
Kiên truc khach chủ dựa vao Web
́ ́ ́ ̀
Sự xuât hiên cua các mô hinh đêu liên quan đên cac giai đoan khac nhau cua sự phat triên hệ
́ ̣ ̉ ̀ ̀ ́ ́ ̣ ́ ̉ ́ ̉
thông mang may tinh. Sự lựa chon chinh xac mô hinh cho kiên truc logic cua mang may tinh
́ ̣ ́ ́ ̣ ́ ́ ̀ ́ ́ ̉ ̣ ́ ́
cho phep nhà thiêt kế mang đap ứng những yêu câu về tinh hiêu qua, độ tin cây bao vệ những
́ ́ ̣ ́ ̀ ̀ ̣ ̉ ̣ ̉
nguôn tai nguyên mang, sự uyên chuyên thiêt lâp mang và hơn nữa đó là chi phí nhỏ nhât cho
̀ ̀ ̣ ̉ ̉ ́ ̣ ̣ ́
viêc xây dựng và quan tri.
̣ ̉ ̣
1.1.2. Kiến trúc Peer-to-Peer và các hệ thống tính toán
Bước đầu tiên trong sự tiến triển các hệ thống tính toán xuất hiện từ năm 1940 đến
1970,và trong thực tế, nó đã quay trở lại ngay sau khi chiếc máy tính đầu tiên đươc phát
minh ra.
Theo nguyên tắc, mỗi một hệ thống tính toán tại thời điểm này đều dựa vào việc sử dụng
chia sẻ của máy tính đa người dùng, khi mà máy tính chưa xuất hiện. Kiến trúc của những
hệ thống tính toán này, vận hành trong chế độ tự trị, đươc tập trung với các thiết bị đầu
cuối kết nối đến máy tính trung tâm (Hình. 1.2).
Hình. 1.2: Kiến trúc đầu tiển của hệ thống tính toán
Tuy nhiên, nếu các máy tính đươc kết nối bởi các liên kết truyền thông để tạo thành một
mạng, mạng như vậy có một kiến trúc ngang hàng, trong đó không có các máy tính tận
hiến cung cấp toàn bộ nguồn tài nguyên của chúng cho các máy tính khác trong mạng sử
dụng chung.
Vì vậy, kiến trúc tập trung thuộc về danh mục của một hệ thống tính toán tự trị dựa trên
việc sử dụng chia sẻ một máy tính đã người dùng, trong khi đó kiến trúc ngang hàng thuộc
về danh mục mạng máy tính bao gồm các máy tính có vai trò như nhau, không tồn tại máy
tính tận hiến cấp nguồn tài nguyên của chúng cho việc sử dụng chung.
4
- Trong kiến trúc tập trung, tất cả các nguồn tài nguyển của hệ thống tính toán, bao gồm
thông tin, đươc tập trung trong máy tính trung tâm, đươc biết như là máy tính lớn (máy tính
lớn là một thành phần tập trung của hệ thống máy tính). Các thiết bị đầu cuối đươc kết
nối đến máy tính tập trung bằng cáp đươc sử dụng như phương tiện chính truy cập đển
những nguồn tài nguyên thông tin. Vì một thiết bị đầu cuối là một thiết bị tương đối đơn
giản, nó không đòi hỏi bất kì thao tác đặc biệt nào để thiết lập hay yêu cầu cấu hình phần
mềm đươc thực hiện bởi người dùng cuối, khi mà không có phần mềm đươc lưu trữ trong
thiết bị đầu cuối. Việc điều khiển các thiết bị đầu cuối đươc thiết lập chủ yếu (cetrally)
từ máy tính lớn, và tất cả thiết bị đầu cuối đều có cũng kiểu. Vì vậy, đảm bảo đươc
chương trình chạy trên một thiết bị đầu cuối bất kì có thể chạy trên tất cả các thiết bị đầu
cuối trong cùng một cách.
Về măt lưu trữ dữ liêu và bao mât xử lý dữ liêu, sự thuân lơi chinh cua kiên truc tâp trung đó
̣ ̣ ̉ ̣ ̣ ̣ ́ ̉ ́ ́ ̣
là môi quan hệ đơn gian cua viêc xây dựng và quan trị hệ thông bao mât thông tin. Điêu nay
́ ̉ ̉ ̣ ̉ ́ ̉ ̣ ̀ ̀
dân tới sự tâp trung nguôn tai nguyên, vì điêu đó mang lai sự dễ dang để bao vệ rât nhiêu đôi
̃ ̣ ̀ ̀ ̀ ̣ ̀ ̉ ́ ̀ ́
tương nêu những đôi tương nay đươc xac đinh ở môt nơi hơn là chung đươc phân bố ở
́ ́ ̀ ́ ̣ ̣ ́
những vị trí khac nhau
́
Măc dù có nhiêu thuân lơi, những hệ thống tinh toan đâu tiên có số điêu han chế như thiêu
̣ ̀ ̣ ́ ́ ̀ ̀ ̣ ́
sự uyên chuyên hệ thông, không thuân lơi sử dung đôi với người sử dung cuôi và chi phí
̉ ̉ ́ ̣ ̣ ́ ̣ ́
cao.
Khi sử dung những hệ thông tinh toan với kiên truc tâp trung bắt đầu mất dần đi tầm quan
̣ ́ ́ ́ ́ ́ ̣
trọng, mạng ngang hàng trở nên phổ biến hơn, bởi vì chi phí của các mạng này khá thấp.
Tuy nhiên, các mạng ngang hàng hiện nay kết nối các PC hơn nhưng máy tính đa người
dùng. Vì vậy, một thuộc tính chính của mạng ngang hàng đó là thiếu vắng các máy tính tập
trung cung cấp nguồn tài nguyên của chính nó cho việc sử dụng chung.
Những nhươc điểm quan trọng của những mạng ngang hàng đó là sự thực thị, bảo mật và
sự an toàn ở mức thức của chúng, cũng như sự phức tạp trong quản trị. Thêm vào đó,
những nhươc điểm này tăng lên khi số lương các máy tính trong mạng tăng. Vì vậy, kiến
trúc mạng ngang hàng thích hơp cho việc kết nối số lương máy tính ít với yêu cầu về sự
an toàn và khả năng xử lý dữ liệu thấp.
1.1.3 Kiến trúc khách/chủ cổ điển
Những nhươc điểm của hệ thống máy tính tập trung và các mạng máy tính ngang hàng gần
đây đã đươc loại bỏ bởi cấu trúc của các hệ thống máy tính dựa trên kiến trúc khách/chủ.
Kiến trúc này xuất hiện từ khoảng năm 1980, đánh dấu giai đoạn 2 trong tiến trình công
nghệ tính toán. Đặc trưng của của giai đoạn này là sự phân quyền kiến trúc của hệ thống
máy tính tự trị và sự tương kết của chúng trong các mạng máy tính toàn cầu.
Kiến trúc phân quyền kết hơp với những hệ thống tính toán đầu tiên có thể là kết quả của
sự xuất hiện các máy tính cá nhân, khác với các thiết bị đầu cuối đơn, những máy tính cá
nhân có thể thực hiện rất nhiều các chức năng mà trước đây do máy tính trung tâm đảm
nhiệm. Kết quả của sự phân quyền này là có thể tạo nên các hệ thống máy tính toàn cầu
hoặc cục bộ phân tán bao gồm các máy tính cá nhân và các máy tính cung cấp tài nguyên
của nó cho các máy tính khác trong mạng dùng chung. Các máy tính cung cấp tài nguyên
của nó đươc gọi là máy chủ còn những máy tính sử dụng tài nguyên đươc chia sẻ gọi là
máy khách. Theo đó kiến trúc hệ thống máy tính phân tán như vậy đươc biết đến như là
kiến trúc khách/chủ (Hình. 1.3). Các máy tính cá nhân có vai trò máy khách cũng đươc gọi
là các trạm làm việc của mạng.
5
- Hình. 1.3: Kiến trúc khánh chủ
Một máy chủ đặc trưng đươc miểu tả bởi loại tài nguyên mà nó quản lý. Ví dụ, nếu
nguồn tài nguyên là cơ sở dữ liệu thì máy chủ đó đươc coi như là máy chủ cơ sở dữ liệu,
mục đích chính của nó đó là phục vụ các truy vấn của máy trạm cho việc xử lý dữ liệu.
Nếu nguồn tài nguyên là một hệ thống tệp, máy chủ đươc biết đến như là máy chủ tệp. và
mục đích của nó là chuyển các tệp tới các máy trạm. Nói chung, các máy chủ có khả năng
cung cấp các nguồn tài nguyên sử dụng chung, bao gồm cơ sở dữ liệu, các hệ thống tệp và
một số dịch vụ khác đươc thực hiện bởi số các chương trình máy chủ. Thêm vào đó, các
máy chủ có thể cung cấp truy cập tới các thiết bị ngoại vi (ví dụ, máy chủ in ấn có thể
cung cấp việc chia sẻ truy cập đến một máy in).
Chúng ta phân biệt giữa các mô hình kiến trúc khách, mỗi mô hình này tương ứng sự phân
loại thích hơp của các thành phần của kiến trúc phần mềm bên trong các máy tính mạng.
Các thành phần phần mềm phân phối đươc phân biệt bởi chức năng mà chúng có khả năng
cung cấp.
Các chức năng của bất kì một ứng dụng phần mềm nào có thể đươc chia thành 3 nhóm sau
đây:
Các chức năng liên quan tới đầu vào (input) và đầu ra (output)
Các chức năng ứng dụng, cụ thể tới từng vùng kiến thức (một vùng chuyên để giải
quyết một vấn đề nào đó) của ứng dụng
Các chức năng quản lý dữ liệu Data mining
Bất kì một ứng dụng phân mềm hiện nay có thể đươc biểu diển bởi một cấu trúc bao gồm
3 thành phần sau:
Các thành phần trình diễn, mà nó thực thi giao diện người dùng
Các thành phần ứng dụng, thực thi các chức năng ứng dụng
Các thành phần cung cấp truy cập tới các người tài nguyên thông tin, thông tin
Các mô hình của kiến trúc khách chủ dưới đây đươc xác định, tương ứng với các phương
thức phân phối của 3 thành phần phần mềm chính giữa các trạm làm việc và máy chủ
mạng:
6
- Chỉ có dữ liệu đươc lưu trữ trên máy chủ (Hình. 1.4).
Hình. 1.4: Mô hình truy cập đến dữ liệu từ xa
Bổ sung dữ liệu, nhà quản lý tài nguyên đươc xác định trên máy chủ, ví dụ một hệ
quản lý cơ sở dữ liệu (Hình. 1.5).
Hình. 1.5: Mô hình máy chủ điều khiển dữ liệu
Dữ liệu, quản lý tài nguyên, và các thành phần ứng dụng đươc tập trung trên máy
chủ (Hình. 1.6).
Hình. 1.6: Mô hình khách/chủ hai lớp
Các thành phân ứng dụng đươc lưu trên máy chủ, trong khi dữ liệu và quản lý tìa
nguyên đươc lưu trong máy chủ khác (Hình. 1.7).
Hình. 1.7: Mô hình khách/chủ ba lớp
Mô hình của kiến trúc khách chủ đầu tiên lưu trữ dữ liệu trên máy chủ, không cung cấp
tính năng hiệu quả cao, vì thông tin đươc xử lý trên các máy trạm và các tệp chứa thông tin
này phải đươc truyền cho việc xử lý từ máy chủ trên toàn bộ mạng. Việc truyền khối
7
- lương lớn dữ liệu trên toàn mạng dẫn tới sự trao đổi thông tin với tốc độ thấp. Tiếp theo,
điểu này có thể dẫn tới quá tải trên mạng. Chính vì lí do này, mô hình truy xuất dữ liệu từ
xa chỉ có thể đươc sử dụng cho các mạng khá nhỏ, với việc xử lý số lương dữ liệu ít.
Hình 1.5 chỉ ra mô hình thứ 2 của kiến trúc khách chủ, trong đó thông tin đã đươc lưu trữ
trên máy chủ, đó là hệ thống quản lý tài nguyên (ví dụ DBMS). Đây là mô hình máy chủ
điều khiển dữ liêu. Các thành phần trình diễn và ứng dụng đã đươc kết hơp và thực thi
trên máy trạm, hỗ trơ các chức năng hiển thị và dữ liệu đầu vào cũng như các chức năng
ứng dụng. Theo quy ước, việc truy cập đến các nguồn tài nguyên thông tin đươc cung cấp
với các thao tác của ngôn ngữ đặc biệt (ví dụ, SQL trong trường hơp của các cơ sở dữ
liệu) hoặc gọi các chức năng chứa trong các thư viện chương trình chuyên dụng. Các câu
truy vấn tạo ra các nguồn tài nguyên thông tin đươc gửi tới các trình quản lý tài nguyên.
Trình quản lý tài nguyên xử lý các truy vấn và trả về các khối dữ liệu cho máy trạm.
Ưu điểm của mô hình máy chủ điều khiển dữ liệu so với mô hình truy cập dữ liệu từ xa
đó là thông tin ít đươc truyền trên mạng hơn. Đó là nhờ có việc lựa chọn các đơn vị thông
tin đươc yêu cầu từ các tệp không đươc thực hiện trên máy trạm mà đươc thực hiện trên
máy chủ. Nói chung, tại thời điểm hiện tại, có rất nhiều công cụ phát triển, cung cấp phát
triển ứng dụng nhanh, sử dụng một giao diện chuẩn, thao tác với DBMS hướng SQL.
Điều này cung cấp sự thống nhất, sự thao tác giữa các thành phần, và rất nhiều sự lựa
chọn các công cụ phát triển phần mềm.
Nhươc điểm chính của mô hình điều khiển dữ liệu đó là không có danh giới rõ ràng giữa
thành phần trình diễn và thành phần ứng dụng. Điều này dẫn đến cản trở sự phát triển
tiếp theo của hệ thống tính toán có kiến trúc xây dựng dựa vào mô hình này. Hơn thế nữa,
sự thay đối một thành phần yêu cầu sự thay đổi của toàn bộ hệ thống
Toàn bộ những thuận lơi và bất lơi của mô hình máy chủ điều khiển dữ liệu đươc liệt kê
ở trên, có thể kết luận rằng dựa vào mô hình này là phù hơp nhất xây dựng những hệ
thống tính toán hướng xử lý nội dung thông tin vừa phải, mà nội dung thông tin này không
tăng theo thời gian. Vì vậy, độ phức tạp của các thành phần áp dụng ứng dụng sẽ không
cao.
So với mô hình máy chủ điều khiển dữ liệu, mô hình khách chủ hai lớp thuận tiện hơn để
điều hành. Mô hình này đã đươc phát triển với giả thuyết rằng, việc thực hiện xử lý trên
máy trạm đươc giới hạn đối với các chức năng trình diễn, trong khi các chức năng ứng
dụng và truy cập dữ liệu đươc thực hiện ở phía máy chủ. Những chức năng ứng dụng có
thể đươc thực hiện trong các chương trình riêng rẽ hoặc trong các thủ tục lưu trữ, đươc
biết đến như là các thủ tục cơ sở dữ liệu. Những thủ tục này đươc lưu trữ trong cơ sở dữ
liệu và đươc thực hiện trên máy chủ, nơi thành phần điều khiển truy xuất dữ liệu, tương
đương nhân của DBMS cũng hoạt động.
Ngươc lại với mô hình máy chủ điều khiển dữ liệu, lơi ích của máy chủ tích hơp rất rõ
ràng: đơn giản, hiệu quả cao, quản trị tập trung, và vì vậy giảm bớt việc sự dụng các
nguồn tài nguyên mạng. Từ những lơi ích này, có thể đi đến một kết luận đó là mô hình
máy chủ tích hơp là tối ưu cho các mạng lớn hướng về xử lý số lương lớn thông tin, hoặc
sẽ là mô hình mong đơi trong thời gian tới.
Khi các thành phần ứng dụng ngày càng phức tạp và sử dụng nhiều nguồn tài nguyên, một
máy chủ riêng biệt (máy chủ ứng dụng) có thể đươc sử dụng. Chính từ nhu cấu này đem
lại mô hình ba lớp của kiến trúc khách chủ. Lớp đầu tiên chính là máy trạm, lớp thứ là máy
chủ ứng dụng, và lớp ba chính là máy chủ điều khiển dữ liệu. Kiến trúc khách chủ là hai
8
- lớp khi các thành phần ứng dụng đươc đặt trên máy trạm cùng với thành phần trình diễn
(Hình. 1.4, Hình. 1.5), hoặc trên máy chủ cùng với trình quản lý tài nguyên và dữ liệu
(Hình. 1.6).
Bên trong khung của máy chủ ứng dụng, một vài chức năng ứng dụng có thể đươc thực
hiện, mỗi chức năng thiết lập mẫu các dịch vụ riêng biệt, cung cấp một vài chức năng cho
bất kì chương trình có thể và muốn sử dụng chúng. Có một vài máy chủ ứng dụng, mỗi
máy chủ hướng về tập các dịch vụ xác định. Bất ki một chương trình nào sử dụng dịch vụ
đều đươc xem như là máy chủ. Chi tiết thực hiện các chức năng ứng dụng trên máy chủ
ứng dụng đươc ẩn đi đối với máy trạm. Các truy vận nhận từ các ứng dụng của máy trạm
đươc đặt trong hàng đơi kết hơp với các máy chủ xử lý ứng dụng, tách và truyền truy vấn
cho việc xử lý theo chế độ ưu tiên.
Máy trạm có thể có nhiều hơn một thành phần trình diễn. Thành phần trình diễn có thể hỗ
trơ giao diện cho người dùng cuối (tại thời điểm đó, nó hoạt động như thành phần trình
diễn); nó có thể cung cập chuyển dữ liệu từ các thiết bị; và có thể là máy chủ ứng dụng.
Cuối cùng cho phép thựchiện các hệ thống ứng dụng, bao gồm các máy chủ ứng dụng của
vài mức. Kiến trúc của hệ thống như vậy có thể đươc xem như là một nhân bao xung
quanh bởi các vòng đồng tâm. Nhân bao gồm các máy chủ ứng dụng, mà ở đó các chức
năng ứng dụng cơ bản đươc thực hiện. Tập biểu tương nhẫn của các máy chủ ứng dụng
hoạt động như các máy trạm liên quan đến máy chủ của mực trong. Không có sự giới hạn
số các mức của các máy chủ ứng dụng.
Sự hiện diện của các đường rành giới giữa các thành phần của máy chủ phần mềm trong
kiến trúc khách/chủ và sự phân phối cân bằng của các thành phần trong các máy tính của
mạng cho phép mức như vậy mềm dẻo không có hiệu lực trong kiến trúc ngang hàng. Như
vậy, nguồn tài nguyên dành ở mức cao của sự thực thi và khả năng mở rộng và cải tiến
chức năng của hệ thống có thể đươc thực hiện.
Kiến trúc mạng khách/chủ, xuất hiện ở giai đoạn hai của sự tiến triển các cộng nghệ
mạng máy tính còn đươc gọi là kiến trúc khách/chủ cổ điển. Sau đây là một số mô tả chức
năng của mô hình này:
Máy chủ không sinh ra thông tin cuối cùng mà là dữ liệu, dữ liệu này tuy thuộc vào
sự biên dịch bởi các máy trạm
Các thành phần của hệ thống ứn dụng đươc phân tán trong các máy tính trên mạng.
Các giao thức riêng, không tương thích với TCP/IP, có thể đươc sử dụng giữa các
máy trạm và máy chủ.
Mỗi máy tính mạng đươc hướng thực thi các chương trình cục bộ.
Chức năng cuối cùng nảy sinh đó là bảo mật thông tin. Khi chỉ các chương trình cục bộ
đươc thực hiện trên máy tính, sự di chuyển các chương trình trên mạng trong suốt quá trình
xử lý các truy vấn đươc thực hiện bởi máy trạm đến máy chủ không xuất hiện. Khả năng
thực hiện các chương trình gây tác hại hoặc sự lây nhiễm máy tính sẽ giảm đi
Về mặt lưu trữ dữ liệu và xử lý bảo mật, kiến trúc khách/chủ có số bất lơi sau:
Phân phối vật lý của các thành phần của các chương trình ứng dụng và sự hỗn
loạn, không tuân thủ qui tác của các hệ thống tính toán làm phức tạp xây dựng và
quản trị hệ thống bảo mật
Một phần bảo vệ tài nguyên thông tin lưu trên máy tính cá nhân đươc miêu tả bởi
và phụ thuộc tăng điểm yếu.
9
- Việc sử dụng các giao thức riêng cho việc chuyển đổi dữ liệu giữa các máy tính
yêu cầu việc phát triển các công cụ bảo mật riêng như vậy dẫn đến tăng chi phí.
Với việc mất các thiết lập phần mềm của các máy trạm, thực hiện các thủ tục
phức tạp cho việc kết nối lại và phối hơp máy tính này với phần còn lại của hệ
thống là cần thiết, dẫn đến sự tăng thời gian phục hồi lỗi.
1.1.4. Kiến trúc khách chủ dựa Web
Có rất nhiều điều bất lơi đối với các mạng máy tính dựa theo kiến trúc khách chủ cổ điển,
những bất lơi này có thể đươc loại bỏ bởi bằng cách kết hơp các đặc tính tốt nhất của các
hệ thống tập trung và các hệ thống khách chủ cổ điển. Kiến trúc mới của các mạng máy
tính đươc gọi là kiến trúc Intranet. Nó còn đươc gọi là kiến trúc Web hay là kiến trúc khách
chủ dựa vào công nghệ Web. Kiến trúc này là kết quả nghiên cứu trong thời gian dài và
phát triển trong lĩnh vực áp dụng Internet vào trong mạng cục bộ. Sự xuất hiện của kiến
trúc Intranet trong năm 1993 đã đươc cân nhắc cho việc bắt đầu của giai đoạn 3 trong sự
tiến triển của các hệ thống mạng máy tính.
Chức năng chính của kiến trúc Intranet chính là các chức năng đã bị loại bỏ trong mô hình
máy tính trung tâm trong giai đoạn hai của sự tiến triển các hệ thống tính toán. Nèn tản của
kiến trúc mới này đó là công nghệ.
Công nghệ Web còn đươc gọi là “các văn bản Web”, mà các văn bản này đươc lưu trên
máy chủ và đươc biên dịch và hiển thị bởi chương trình duyệt hoạt động trên máy trạm
workstations (Hình. 1.8). Các chương trình duyệt đươc gọi là trình duyệt Web.
Hình. 1.8: Kiến trúc khác/chủ dựa vào công nghệ Web
Nói cách khác, một tài liệu Web biểu diễn các tài liệu siêu media, bao gồm các trang Web
đươc nối với nhau bởi các liên kết. Mỗi một trang Web có thể chứa các đối tương và các
liên kết tới các trang Web khác. Theo qui luật đã định, một trang Web đươc biểu diễn bởi
một tệp văn bản, với định dạng xác định mà chỉ rõ các liên kết tới các đối tương khác và
các văn bản Web, đươc xác định trên các host mạng khác nhau. Thực ra, về bản chất một
văn bản Web chứa chỉ một trang Web nhưng hơp lý nhất là nó có thể bao gồm số lương
lớn các trang, mà các trang này thuộc về các văn bản Web khác nhau.
10
- Một trang Web có thể chứa văn bản và hình ảnh. Không giống như văn bản giấy, trang
Web có thể là tương tác với các chương trình máy tính và có thể chứa các liên kiết đến
những đối tương khác. Bất kì link nào chứa trong một trang Web đươc đánh dấu bởi màu
và/hoặc dấu gạch chân.
Hệ thống các siêu liên kết dành đươc dựa vào yếu đó đó là các vùng lựa chọn của tài liệu,
đươc biểu diễn bởi text, ảnh, hoạt động như các liên kết đến các đối tương đươc kết nối
logic đến chúng. Vì vậy các đối tương liên kết có thể đươc lưu trữ tại vị trí bất kì nào trên
mạng Một trang Web có thể chứa liên kết đến một số kiểu đối tương sau:
Các phần khác của một tài liệu Web
Các tài liệu Web hoặc các tài liệu có định dạng khác (ví dụ tài liệu bảng tính, soạn
thảo), mà các tài liệu này có thể đươc xác định trên bất kì máy tính nào trên mạng
Các đối tương Multimedia, bao gồm các ảnh, âm thanh và video.
Một chương trình sẽ đươc thực thi trên máy chủ sau kích vào liên kết
Một chương trình đươc truyền tới cho máy trạm bằng trình duyệt từ máy chủ và
đươc biên dịch và thực thi trên máy trạm
Các dịch vụ khác, bao gồm e-mail, sao chép các tệp thông qua mạng, tìm kiếm thông
tin vv..
Từ những định nghĩa về tài liệu Web, dễ dàng cho các chương trình điều hướng, thực hiện
trên các máy trạm , không bị hạn chế hiển thị các trang Web và thực hiển truyền tới các
đối tương khác. Chương trình điều hướng có thể là chương trình thực sự trên máy chủ và
thông dịch hoặc chạy các môdun có khả năng thực thi liên quan tới tài liệu Web trên máy
trạm
Việc truyền các tài liệu và các đối tương từ máy chủ đến máy trạm sau khi các yêu cầu từ
trình duyệt đươc xử lý bởi một chương trình hoạt động trên máy chủ, chương trình này
đươc gọi là máy chủ Web. Để nhận đươc các tài liệu hoặc các đối tương từ máy chủ Web,
trình duyệt gửi một truy vấn thích hơp tớ cho máy chủ. Nếu có đủ quyền hạn, một kết nối
logic đươc thiết lập giữa máy trạm và máy chủ. Sau đó, máy chủ xử lý truy vấn, truyền
kết quả về cho trình duyệt Web và hủy bỏ kết nối.
Máy chủ Web hoạt động như là bộ tập trung thông tin làm nhiệm vụ truyền thông tin từ
các nguồn tài nguyên khác nhau và biểu diễn chúng cho người sử dụng trong một cách thức
đồng nhất. Trình duyệt cho phép người sử dụng xem thông tin mà không phụ thuộc vào
định dạng của thông tin.
Để kết nối kiểu dữ liệu phân tán và kiểu dữ liệu khác, các tài liệu Web cho phép cân nhắc
thông tin với yêu cầu đầy đủ chi tiết, làm đơn giản hóa phân tích các nội dung thông tin.
Điều này rất hơp lý để tập trung quan tâm tới khía cạnh quan trọng của dữ liệu, và nghiên
cứu tài nguyên đã lựa chọn một cách chi tiết.
Kiến trúc Intranet có một vài ưu điểm:
The following distinctive features of Intranet architecture should be emphasized:
Thông tin cuối cùng dành để hiển thị cho người dùng xem bằng chương trình duyệt
đươc tạo trên máy chủ
Tất cả nhưng nguồn tài nguyên và hệ thống ứng dụng đươc tập trung trên máy chủ
Các giao thức của bộ giao thức TCP/IP sẽ đươc sử dụng cho việc trao đổi dữ liệu
giữa máy chủ và các máy trạm
11
- Điều khiển tập trung không chỉ trên máy chủ mà còn cho máy trạm rất thuận lơi, vì
chúng đã đươc chuẩn về mặt phần mềm
Các máy trạm có thể thực thi các chương trình từ những máy tính khác trên mạng
Tât cả những chức năng nay, loai trừ chức năng cuôi cung, trơ giup giai quyêt vân đề bao
́ ̀ ̣ ́ ̀ ́ ̉ ́ ́ ̉
̣
mât thông tin.
Sự tâp trung tât cả nguôn tai nguyên thông tin và cac hệ thông ứng dung trên may chủ lam
̣ ́ ̀ ̀ ́ ́ ̣ ́ ̀
đơn gian trong viêc xây dựng và quan trị cua hệ thông bao mât và bao vệ cac đôi tương ở
̉ ̣ ̉ ̉ ́ ̉ ̣ ̉ ́ ́
cung môt nơi sẽ đươc thực hiên môt cach dễ dang hơn so với kiên truc phân tan.
̀ ̣ ̣ ̣ ́ ̀ ́ ́ ́
Viêc sử dung chuân mở TCP/IP cho viêc trao đôi thông tin giữa cac may tinh trong mang dân
̣ ̣ ̉ ̣ ̉ ́ ́ ́ ̣ ̃
đến viêc thống nhât cac phương thức tương tac giữa cac tram lam viêc và may chu. Điêu
̣ ́ ́ ́ ́ ̣ ̀ ̣ ́ ̉ ̀
nay không mang lai lơi ich để giai quyêt vân đề cua viêc cung câp trong đổi thông tin an toàn
̀ ̣ ́ ̉ ́ ́ ̉ ̣ ́
giữa các ứng dụng máy chủ trên các máy tính. Giải pháp cho an toàn tương tác phát triển
cho từng mính tính sẽ thích hơp đối với tất cả ứng dụng.
Sự thuận lơi của điều khiển tập trung của các máy trạm từ máy chủ làm giảm các lỗi
không mong đơi có thể xảy do người dùng, điều hành, và quản lý. Nhưng lỗi như vậy là
một trong sự đe dọa chính đối với àn toàn thông tin, dẫn đến sự phá hoại. Ví dụ, việc nhập
dữ liệu đầu vào không chính xác gây ra ngừng chạy chương trình. Những lỗi này tạo ra
chỗ yếu có thể bị khai thác.
Trong kiến trúc Intranet, giả xử các chương trình xử lý thông tin phân tán vẫn đươc sử
dụng từ máy chủ có thể đươc thực hiện trên máy trạm. Hệ thống như vậy của việc xử lý
phân tán cho phép tập trung tất cả các hệ thống ứng dụng trên máy chủ. Tuy nhiên, khả
năng các chương trình thực hiện từ máy chủ trên máy trạm sinh ra nhiều sự đe dọa mới từ
an toàn thông tin (ví dụ, sự đe đọa đó là thay thế chương trình truyền từ máy chủ [1,14]. Ví
vậy, khả năng di trú các chương trình bổ sung thêm nhiều yêu cầu để duy trì bảo mật trên
mạng.
1.2. Nền tảng của các Công nghệ mạng
1.2.1. Sự tương tác với Webserver
1.2.1.2 Miêu tả tổng quát
Ngày nay, hầu hết các phương thức phổ biến tương tác với Webserrver chính là kiến trúc
khánh/chủ, dựa vào công nghệ Web. Việc xử lý trao đổi thông tin đươc sử dụng trong các
công nghệ Web không khác so với việc xử lý trong kiến trúc khánh/chủ chuẩn, mà ở đó
chương trình máy chủ điều khiển việc xử lý các câu truy vấn từ các chương trình khách.
Trong việc xử lý trao đổi thông tin sử dụng trong các công nghệ Web, các chương trình
khách đươc thực thi trong các chương trình định hướng Web mà đươc tìm thấy trên các
máy trạm, cũng như các chương trình phụ trơ hoạt động như các trạm. Các trình duyệt
Web đươc sử dụng biên dịch và hiển thị các tài liệu Web đươc lưu trữ trên máy chủ, cũng
như truy cập tới các dịch vụ đặc biệt khác (Hình. 1.9), như:
• Sao chép các tệp từ máy chủ về máy trạm và ngươc lại (FTP)
• Cung cấp một phiên ảo trên máy chủ (Telnet)
• Truy cấp thực đơn đa cấp tới các nguồn tài nguyên máy tính (Gopher)
12
- Hình. 1.9: Lươc đồ tổng quát của sự tương tác giữa trình duyệt và máy chủ
Việc truy cập tới các dịch vụ đặc biệt này là khả thi, vì trên thực tế, ngay từ đầu, các
chương trình định hướng Web đã đươc thiết kế như là các chương trình đa giao thức mà có
thể cung cấp một giao diện chung cho phép truy cập đến rất nhiều các nguồn tài nguyên
mạng. Hiện này, các chương trình định hướng Web phổ biến nhất hiện nay đó là Firefox,
Internet Explorer, Opera, Mozilla, Netscape navigator,… Các chương trình Web phụ trơ
đươc sử dụng để thu đươc dữ liệu thống kê từ máy chủ Web cho việc định chỉ số thông tin
chứa trong máy chủ Web, hoặc cho mục đích cập nhật các cơ sở dữ liệu cho các cơ chế
tìm kiếm.
Trong lươc đồ tương tác với các công nghệ Web, máy chủ Web hoạt động như một
chương trình máy chủ chính. Chương trình này đươc chạy trên máy chủ và thực hiện xử lý
các truy vấn đến từ các trạm Web. Sự tương tác giữa các trạm Web và các máy chủ Web
đươc thiết lập theo tập các luật đươc xác định bởi giao thức truyền siêu liên kết (HTTP).
Khi thực thi, máy chủ Web điều khiển một cổng logic trên mạng, mà cổng này đươc gán
mặc định bằng 80, và coi như bất kì các thông báo nào gửi tới cổng này đươc chuyển tới
máy chủ Web.
Khi nhận đươc một truy vấn từ Web client, máy chủ Web thiết lập truyền thông sử dụng
TCP/IP và trao đổi thông với Web client theo giao thức HTTP. Nếu Web client yêu cầu truy
cập thông tin đươc bảo vệ trên máy chủ Web, máy chủ Web có thể yêu cầu định danh
người dùng và mật khẩu. Các tài liệu Web đươc bảo vệ sẽ chỉ hiển thị đối với những
người dùng có các quyền truy cập thích hơp.
Các tài liệu nhận đươc bởi trình duyệt từ máy chủ Web tương ứng với các tệp văn bản
đươc viết bằng ngôn ngữ đặc biệt, gọi là ngôn ngữ đánh dấu siêu văn bản (HTML). Ngôn
ngữ này bao gồm tập các qui định về định dạng văn bản (trong bất kì một ngôn ngữ nào)
và cách hiển thị trong của sổ của trình duyệt Web. Việc đánh dấu xác định định dạng,
cũng như điều khiển cách liên kết tới bất kì đối tương và đồ họa sẽ đươc hiển thị. Cùng
với ngôn ngữ đánh dấu, các chương trình đươc viết bằng ngôn ngữ kịch bản JavaScript và
VBSCript có thể đươc chèn vào bên trong tài liệu Web và trình duyệt Web sẽ biên dịch khi
nạp và hiển thị tài liệu Web.
Để truy cập tới thông tin mà máy chủ không thể xử lý trực tiếp (ví dụ: truy cập cơ sở dữ
liệu), một hệ thống cổng phần mềm sẽ đươc sử dụng. Cổng phần mềm, nhận truy vấn từ
máy chủ Web, xử lý truy vấn, hoặc hoạt động như proxy giữa máy chủ Web và máy chủ
13
- khác (ví dụ: máy chủ DBMS). Cổng phần mềm phát triển theo các chuẩn đặc biệt xác định
các phương thức để máy chủ có thể gọi các ứng dụng hoặc các hàm từ các thư viện liên
kết động,và hơn thể nữa cách thức của trao đổi thông tin với đối tương chương trình. Giao
diện cổng chung (CGI-Common Gateway Interface) là một trong nhưng các chuẩn phổ biển
này.
1.2.1.2 Xử lý truy vấn từ Web Client
Các bước xử lý bởi máy chủ khi xử lý truy vấn nhận đươc từ Web Client:
1. Trình duyệt Web hoặc Web client khác, gửi truy vấn đến máy chủ Web, yêu cầu tài
nguyên thông tin. Truy vấn này đươc gửi trong định dạng HTTP, trong khi địa chỉ
của nguồn tài nguyên yêu cậu đươc xác định trong định dang URL
2. Sau khi nhận đươc truy vấn từ máy trạm, mấy chủ Web xác định sự tồn tại của các
nguồn tài nguyên đươc yêu cầu trong nguồn tài nguyên cục bộ, có nghĩa là trong
nguồn tài nguyên mà máy chủ điều khiển.
3. Nếu nguồn tài nguyên yêu cầu có sẵn, máy chủ Web kiểm tra quyền truy cập vào
nguồn tài nguyên này và nếu quyền truy cập không vi phạm, máy chủ Web trả về
nội dung của nguồn tài nguyên đến cho Web client.
4. Nếu yêu cầu của Web client can thiệp các quyền truy cập tài nguyên, máy chủ Web
từ chối truy vấn và tra về cảnh bảo thích hơp cho client.
5. Nếu nguồn tài nguyên yêu cầu không nằm trong nguồn tai nguyên cục bộ trên máy
chủ Web, máy chủ xác định thông tin về vị trí nguồn tài nguyên từ các tệp cấu hình
của nó, kể cả việc xây dựng lại (Hình. 1.10).
Hình. 1.10: Định hướng truy vấn
6. Nêu may chủ Web hỗ trơ cây ao cua những may chủ Web khac, viêc tim kiêm sẽ
́ ́ ̉ ̉ ́ ́ ̣ ̀ ́
đươc đinh hướng tới nguôn tai nguyên cân thiêt.
̣ ̀ ̀ ̀ ́
7. Nêu may chủ Web đươc sử dung như may chủ uy quyên, môt măt nó hoat đông như
́ ́ ̣ ́ ̉ ̀ ̣ ̣ ̣ ̣
là may chủ Web cho cac may tram gửi truy vân tới, măt khac nó hoat đông như tram
́ ́ ́ ̣ ́ ̣ ́ ̣ ̣ ̣
Web, gửi truy vân tới cac may chủ (Hình. 1.11).
́ ́ ́
14
- Hình. 1.11: Sử dụng máy chủ Web như máy chủ proxy
8. Sau khi trả về thông tin yêu câu cho may tram, may chủ Web huy bỏ kêt nôi.
̀ ́ ̣ ́ ̉ ́ ́
May chủ Web có thể đươc sử dung để giai quyêt cac vân đề lớn. Điên hinh, cac chức năng
́ ̣ ̉ ́ ́ ́ ̉ ̀ ́
sau đươc hỗ trơ trên cac may chu:
́ ́ ̉
Hỗ trơ cơ sơ dữ liêu văn ban phân câp, xử lý truy vân và điêu khiên truy câp tới
̣ ̉ ́ ́ ̀ ̉ ̣
thông tin từ cac chương trinh phia client
́ ̀ ́
Tiên xử lý dữ liêu trước khi trả lời môt truy vân
̀ ̣ ̣ ́
Tương tac với cac chương trinh mở rông và cac may chủ khac, ví du, cac cơ chế tim
́ ́ ̀ ̣ ́ ́ ́ ̣ ́ ̀
́
kiêm
Phân lớn cac mô hinh may chủ Web như Netscape's Enterprise Server, Microsoft's Internet
̀ ́ ̀ ́
Information Server bổ sung giao thức mã hoa Secure Socket Layer (SSL), duy trì sự riêng
́
tư, tính toan ven, tinh xac thực cua dữ liêu truyên trên mang. Giao thức SSL cung đươc bổ
̀ ̣ ́ ́ ̉ ̣ ̀ ̣ ̃
sung trong cac trinh duyêt Web. Chức năng nay cung câp môt môi trường an toan cho viêc sử
́ ̀ ̣ ̀ ́ ̣ ̀ ̣
dung công nghệ Web trong cac mang may tinh.
̣ ́ ̣ ́ ́
1.2.2. Xử lý thông tin phân tán trên nền tảng cả các chương trình dễ biến
đổi
Môt trong cac chức năng quan trong cua kiên truc Intranet đó là viêc xử lý thông tin phân tan
̣ ́ ̣ ̉ ́ ́ ̣ ́
trên nền tảng của những chương trinh dễ biến đổi. Chương trinh hướng Web chay trên
̀ ̀ ̣
may tram không chỉ hiên thị cac trang Web và thực hiên cac chuyên tiêp tới cac nguôn tai
́ ̣ ̉ ́ ̣ ́ ̉ ́ ́ ̀ ̀
nguyên khac mà nó có thể kich hoat cac chương trinh trên may chu, thông dich và thực thi
́ ́ ̣ ́ ̀ ́ ̉ ̣
chung, khi tài liệu Web đươc thực thi những đòi hỏi. Cac chương trinh nay đươc truyên
́ ́ ̀ ̀ ̀
cung với tai liêu từ may chu. Kiêu xử lý thông tin phân tan nay đam bao rang bôc cua toan bộ
̀ ̀ ̣ ́ ̉ ̉ ́ ̀ ̉ ̉ ̀ ̣ ̉ ̀
hệ thông ứng dung trên may chủ
́ ̣ ́
Có 3 kiêu chương trinh chinh có thể đươc kêt hơp với tai liêu Web và truyên tới may tram để
̉ ̀ ́ ́ ̀ ̣ ̀ ́ ̣
thực thi:
̣
Java applet đươc thực thi bởi công nghệ Java
Cac chương trinh đươc viêt băng cac ngôn ngữ kich ban như JavaScript, VBScript,
́ ̀ ́ ̀ ́ ̣ ̉
VRML
Cac thanh phân ActiveX, liên quan tới công nghệ ActiveX
́ ̀ ̀
15
- Thực tế là, tồn tại một vài loại chương trình dễ biến đổi có thể đươc miểu tả bởi các khả
năng chức năng khác nhau của chúng, và hơn thể nữa bởi sự cạnh tranh giữa các công ty
trong lĩnh vực chương trình và các côn nghệ mạng như Sun Microsystems, Netscape và
Microsoft corporations, và các công ty khác.
1.2.2.1 Công nghệ Java
Java đươc thiêt kế bởi Sun Microsystem vao những năm 1990, đáp ứng đòi hỏi các chương
́ ̀
trình máy tính hướng môi trường mạng và tích hơp công nghệ Web. Động lực phía sau
công nghệ Java đưa ra các yêu cầu kết hơp của sự dễ biến đổi, độc lập phần cứng và các
nền tảng, an toàn và tin cậy trong việc xử lý thông tin.
Java là ngôn ngữ lập trình hướng đối tương dựa vào nền tảng của ngôn ngữ C++, loại bỏ
đi nhưng chức năng không cần thiết, bổ sung thêm chức năng cung cấp sự an toàn và tin
cậy của thao tác điện toán phân tán. Có rất nhiều chức năng trong Java vay mươn từ ngôn
ngữ đối tương C và Samlltalk. Để giảm độ phức tạp lập trình và số lỗi trong mã, Java đưa
ra sự chính xác của kiểu dữ liệu, hướng đội tương một cách chặt chẽ. Tất cả phần tử dữ
liệu đươc lưu trong các đối tương, và tất cả hàm bao gồm các phương của vài đối tương.
Kiểu đơn vị thông tin chính xác cho phép phát hiện lỗi kết nối kiểu dữ liệu không tương
thích tại bươc biên dịch.
Hướng tiếp cận module đối với thiết kế chương trình, thực thi trong ngôn ngữ và sự đơn
giản của ngôn ngữ, không những cho phép phát triển nhanh các chương trình mới mà còn
cập nhật ứng dụng đươc viết trước đó và kiểm tra trong Java. Hơn thế nữa, Java đưa ra
việc cập nhật hiệu quả cho các chương trình cũ đươc viết bằng ngôn ngữ lập trình khác.
Việc bổ sung các phần tử ngôn ngữ chuẩn, Java bao gồm số các thư viện, từ đó có thể xây
dựng các hệ thống tính toán với mọi độ phức tạp. Tập hơp các chuẩn thư viên có thể đươc
bổ sung liên tục với các hàm mới.
Máy ảo Java, nó thực thị các chương trình Java thông qua bộ thông dịch, độc lập phần cứng
và hệ điều hành. Xử lý thông tin một cách an toàn và tin cậy đươc tách riêng khỏi máy ảo.
Kiến trúc máy ảo, sự trình diễn của các mục dữ liệu và hệ thống câu lệnh đươc xác định
Bộ vi xử lý Java ảo cung cấp môi trường đầy đủ cho việc thực thi một chương trình Java.
Vì thế, tất cả chương trình Java phải đáp ứng các đặc tả của bộ vi xử lý trừu tương, bộ vi
xử lý trừu tương xác định tập các chỉ thị độc lập máy tính của nó, kiểu dữ liệu, và các
thanh ghi đươc xử dụng. Nguồn của chương trình Java đươc dịch thành mã độc lập máy
gọi là mã byte, sau đươc đươc biên dịch bởi bộ vi xử lý trừu tương, đươc thực hiện bởi
bộ vi xử lý Java ảo
Biên dịch chương trình Java dành cho sự thực thi trên máy trạm trong môi trường của trình
duyệt gọi là applet Java hoặc đơn giản hơn là applet. Theo bản chất của applet, mọi applet
đại diện chương trình nhỏ, trong đó một vài chức năng bắt buộc sẽ đươc xác định. Applet
đươc nạp từ máy chủ thông qua mạng và đươc thực thi trong trình môi trường trình duyệt
(Hình. 1.12). Các liên kết đến applet đươc xác định trong tài liệu Web, những applet không
chứa trong thành phần tài liệu Web. Thay vào đó, applet đươc lưu trữ ở tệp riêng biệt trên
máy chủ.
16
- Hình. 1.12: Truyền và thực thi các chương trình Java độc lập máy
Sự độc lập của mã byte Java đối với phần cứng và hệ điều hành có khả năng thực hiện
đươc bởi sự thực hiện chương trình của bộ vi xử lý Java ảo. Điều này dùng cho thông dịch
các applet cho từng nền tảng
Mã byte của các chương trình Java có một số chức năng sau:
Mã dễ dãng thông dịch trực tiệp mã máy cho bất kì nền tảng phần cứng nào.
Chiều dài trung bình của câu lệnh trong mã byte ngắn tối thiểu, vì thế giảm độ
phức tạp và kích cỡ của applet Java khi so sánh với các chương trình thực thi bình
thường
Mỗi mã byte của chương trình chứa thông tin đây đủ chương trình cho phép mã này
đươc kiểm tra một cách an toàn cho việc thực thi.
Mã byte đươc phát triển làm giảm chiều dài trung bình của chương trình một mức hơp lý
nhất. Bộ vi xử lý Java ảo có kiến trúc ngăn xếp và thành ghi nhỏ và thường xử dụng định
địa chỉ gián tiếp. Vì thế, phần lớn các câu lệnh chiếm byte đơn. Nói chung, các bộ vi xử lý
Java có tập các chỉ thị cho từng kiểu dữ liệu. Do vậy, chiều dài trung bình của câu lệnh
Java chỉ có 6 byte. Chiều dài trung bình của câu lệnh cho bộ vi xử lý RISC sắp xỉ 4 byte.
Hai chức năng quan trọng đươc quy định cho tốc đô cao thực thi an toàn và tin cậy của
applet
Kiểm tra mã byte để đảm bảo sự toàn vẹn và hơp thức của các chỉ thị trước khi
thực thi.
Điều khiển vào khóa các thao tác trong suốt thời gian thông dịch mã byte
Việc nạp và kiểm tra các mã byte thực hiện bởi chức năng đầu tiên, quản lý bảo mật của
bộ vi xử lý Java ảo thực hiện bởi chức năng thứ hai. Quản lý bảo mật truy cập tới các tệp
và nhóm thiết bị ngoại vị bằng applet và thực hiện các chức năng hệ thống như cấp phát
bộ nhớ.
Vi xử lý Java ảo cung cấp sự thực thị và các chức năng khác tác động độ tin cậy xử lý
thông tin, ví dụ “tập hơp dữ liệu vô nghĩa” tương đương với việc giải phóng bộ nhớ. Nói
chúng, Java bôm gồm các chức năng có ích đối với các thao tác chính xác cho các đội
tương và nguồn tài nguyển trong các tính huống không mong đơi.
17
- Chu kì phần mềm applet tương tự như các chương trình viết bằng ngôn ngữ khác. Tiến
trình thực hiện applet khác với tiến trình của các chương trình thông thường khác (Hình.
1.13).
Hình. 1.13: Chuẩn bị và thực thi Applet Java
Ví applet và các thành phần khác của hệ thống ứng dụng đươc lưu trên máy chủ, hệ thống
hỗ trơ việc quản trị một cách dễ dãng hơn. Vì thế, đảm bảo sử dụng lâu dài các chường
trình cập nhật hàng ngày.
Không chỉ các applet đại diện các chương trình luôn biến đổi có thể đươc viết bằng ngôn
ngữ Java – các chương trình ứng dụng cũng có thể đươc viết bằng Java. Tuy nhiên để dành
đươc mức thực thi cao, mã nguồn của chương trình nên đươc biên dịch, không thành mã
byte nhưng mã độc lập với máy cho phép thực hiện trực tiếp bởi các bộ vi xử lý máy trạm.
Hiện nay, có rất nhiều công cụ phát triển cho applet và ứng dụng Java, bao gồm Microsoft
Visual J++, Symantec Cafe, Borland Jbuilder, Sun Microsystems Java Workshop, và một số
công cụ khác.
1.2.2.2 Các công nghệ dựa vào sử dụng các ngôn ngữ kịch bản
Những công nghệ cho phát triển và ứng dụng của các chương trình biến đổi dựa vào sử
dụng nhưng ngôn ngữ kịch bản xuất hiện xong xong với công nghệ Java. Sự khác biệt
quan trong giữa công nghệ kịch bản và Java chính là sự thông dịch theo dòng lệnh của
chương trình kịch bản, thực hiện biên dịch thành mã byte trước khi thực thi. (Để thực thi,
các chương trình Java di động phải đươc biên dịch thành mã byte.) Chức năng của bộ biên
dịch chương trình di động viết bằng các ngôn ngữ kịch bản đươc thực hiện bởi trình duyệt
Web.
Bản chất của ngôn ngữ kịch bản (hay còn gọi ngôn ngữ macro) dễ dàng gở rối và phát
triển chương trình. Các ngôn ngữ kịch bản chính hiện thời dành cho viết chương trình biến
đổi bao gồm:
18
- Ngôn ngữ kịch bản JavaScript, đươc phát triển bởi Netscape và Sun Microsystems,
và ngôn ngữ VBSCript của Microsoft.
Ngôn ngữ mô tả thực tế ảo (Virtual Reality Modeling Language), đươc phát triển
bởi Silicon Graphics.
Ban đầu, JavaScript xuất hiện trong trình duyệt Netscape Navigator 2.0 dưới cái tên
LiveScript. Sau đó, Netscape loại bỏ tên này và bắt đầu làm việc với Sun Microsystems và
đi đến đồng ý sử dụng Java. JavScript không đại diện ngôn ngữ Java, hai ngôn ngữ này có
một vài điểm chung, có khả năng gọi lẫn nhau. (Bảng 1.1).
Bảng 1.1: Các đặc tả của Java và JavaScript
Java JavaScript
Chương trình phải đươc dịch thành mã byte Chương trình đươc thông dịch ở phía
để thực thi ở phía client client ngay khi khởi tạo
Hướng đối tương. Applets bao gồm các đối Dựa đối tương. Không có lớp cho cơ
tương miêu tả sử dụng các lớp cũng với tính chế thừa kế
thừa kế
Các Applet đươc gọi từ các trang Web, Chương trình đươc gòi từ các trang
nhưng đươc lưu trữ riêng trong các tệp Web, nhưng đươc xây dựng bên trong
(nằm ngoài văn bản Web) tài liệu Web
Tất cả kiểu dữ liệu và biến phải đươc miêu Các kiểu dữ liệu và biến không cần
ta trước khi xử dụng. phải khai báo
Ràng buộc tính. Các liên kết đối tương phải Ràng buộc động. Các liên kết đối
tồn tại tại bươc biên dịch tương đươc kiểm tra trong xuốt quá
trình thực thi
Không thể ghi vào đĩa hoặc thực hiện các Không thể ghi vào đĩa hoặc thực hiện
chức năng hệ thống các chức năng hệ thống
Javascript là ngôn ngữ thông dịch, đơn giản, dựa vào các hàm hướng đối tương. Sự dễ
dàng là nguyên nhân … Bản chất hướng đối tương của Javascript đươc chứng tỏ bởi khả
năng của hoạt động với các cửa sổ trình duyệt, thanh trạng thái và các đơn vị khác của giao
diện trình duyệt và các đối tương mạng trong hệ đẳng cấp. Javascript không phải phong
phú như ngôn ngữ Java, nhưng nó thuận lơi hơn, hiệu quả hơn cho một số các tác vụ liên
quan đến xử lý các tài liệu Web và cho sự tương tác với người dùng khi hiển thị các tác vụ
đó. Đây là ngôn ngữ với số lương lớn về cậu lệnh và chức năng đươc xây dựng sẵn. Các
chương trình đươc viets bằng Javascript có thể cung cấp các hộp đối thoại, thực hiện các
phép toán học, chơi đươc các tệp video, audio, tạo ra các tài liệu, xử lý các đối tương
button trong form và rất nhiều đối tương khác. Cùng với sự trơ giúp của JavaScript, có thể
thiết lập các thuộc tính va đặc tính của nhưng thư viên nhị phân Java, và hơn thể nữa là các
mô dun chương trình đươc bổ sung vào trong trình duyệt
Các câu lệnh JavaScript đươc viết trực tiếp trong trang Web, và đươc thực hiện bởi trình
duyệt trong khi trang này đươc nạp, hoặc trong khi các thao tác mà người dùng thực hiện
tương tác với trang Web (ví dụ, khi click vào các đối tương bằng chuột, vị trí của con trỏ
chuột tại vị trí liên kết, hoặc nhập dữ liệu trong các trường của mẫu HTML). Cũng như
bất kì công nghệ hay ngôn ngữ nào đươc sử dụng trong mạng máy tính, xử lý thông tin an
toàn là yêu tiên hàng đầu. Mặc dù Javascript không đươc xem là ngôn ngữ có tính bảo mật
cao, nó đáp ứng đươc phần lớn các yêu cầu này. Một vài chức năng dẫn đến việc dễ bị tấn
công không tồn tại trong ngôn ngữ Javascript, chính vì vậy cung cấp tính bảo mật theo một
cách thức không trực tiếp. Các chương trình đươc viết trong JavaScript, cũng như trong
19
- Java, bị ngăn cấm thực hiện các thao tác đối với các tệp cục bộ. Vì vậy, một chương trình
không có khả năng thay đổi hoặc dành đươc quyền truy cập tới dữ liệu của người dùng.
Nói chung, JavaScript không hỗ trơ các chức năng mạng. Ví dụ, một chương trình không
thể mở cổng TCP/IP, và chỉ có khả năng nạp các đối tương tới địa chỉ đã cho và tạo ra dữ
liệu truyền đến máy chủ Web. Các trình duyệt cho phép người dụng thiết lập các mức an
toàn và điều khiển các mức này, vì vậy các chương trình đươc viết bằng JavaScript chỉ có
thể tập trung vào một vùng xác định thông tin.
Những bất lơi của Javascript đó là tốc độ thực thị tương đối thấp, bởi vì bản chất thông
dịch của ngôn ngữ. Bất lơi này cũng chính là đặc tính của các ngôn ngữ lập trình biên dịch.
Một vấn đề quan trọng cần chú ý đó là phiên bản của Netscape và Microsoft là khác nhau.
Sự khác nhau có thể dẫn tới sự không tương thích. Vì vậy, khi viết các ứng dụng trong
Javascript, cần kiểm trả sự tương thích dịch vụ trong môi trường của chương trình
Microsoft VBScript tương tự như Javascript trong rất nhiều khía cạnh. VBScript là tập con
của ngôn ngữ Visual Basic, hướng tới lập trình cho các trang Web. Có thể phát triển rất
nhiều đối tương bao gồm các thành phần chương trình của các ngôn ngữ khác, trong trang
Web trong khi sử dụng VBScript. Ví dụ, applet Java và các điều khiển ActiveX có thể đươc
lưu trong trang Web, để dễ dàng tương tác với người sử dụng
Không giống như Javascript và VBScript, ngôn ngữ VRML, đươc thiết kế bởi Silicon
Graphics, đươc định hướng cụ thể trơ giúp tạo ra các chương tình thông dịch giả lập thế
giới ảo 3D. Các trình thông dịch VRML đươc gắn vào bên trong trình duyệt, tương tự như
các mô dun chương trình. Các mã nguồn của chương trình trong ngôn ngữ VRML đươc lưu
trong tệp VRML riêng và đươc gọi bởi liên kết từ văn bản Web khi đó nó đươc xem trong
trình duyệt. Kích vào liên kết như vậy dẫn tới mở của sổ riêng, cho phép người dùng
thưởng thức chương trình.
1.2.2.3 Công nghệ ActiveX
ActiveX là tâp hơp cac công nghệ cua Microsoft tâp trung vao viêc bổ sung, tich hơp và
̣ ́ ̉ ̣ ̀ ̣ ́
thông nhât cac phương thức biêu diên và xử lý thông tin hiên thời trong mang may tinh.
́ ́ ́ ̉ ̃ ̣ ̣ ́ ́
Công nghệ nay đươc xây dựng săn phù hơp với kiên truc Web. Ý tưởng của các công nghệ
̀ ̃ ́ ́
ActiveX nằm ở cách thức giống nhau của việc truy cập tới tất cả các nguồn tài nguyên
thông tin (hình 1.14). Công nghệ Web đươc lựa chọn như là nền tảng cho cách thức đồng
nhất của việc truy cập.
20
nguon tai.lieu . vn