Giáo trình Xây dựng ứng dụng web - Nghề: Hệ thống thông tin

Y BAN NHÂN DÂN THÀNH PHHCHÍ MINH  
TRƯỜNG CAO ĐẲNG KINH TKTHUT  
THÀNH PHHCHÍ MINH  
  
GIÁO TRÌNH  
MÔN HC: XÂY DNG NG DNG WEB  
NGH: HTHNG THÔNG TIN  
TRÌNH ĐỘ: CAO ĐẲNG  
(Ban hành kèm theo Quyết định s: /QĐ-CĐKTKT  
ngày  
tháng  
năm 2020 ca Hiu trưởng  
Trường Cao đẳng Kinh tế - Kthut Thành phHChí Minh)  
Thành phHChí Minh, năm 2020  
Y BAN NHÂN DÂN THÀNH PHHCHÍ MINH  
TRƯỜNG CAO ĐẲNG KINH TKTHUT  
THÀNH PHHCHÍ MINH  
  
GIÁO TRÌNH  
MÔN HC: XÂY DNG NG DNG WEB  
NGH: HTHNG THÔNG TIN  
TRÌNH ĐỘ: CAO ĐẲNG  
THÔNG TIN CHNHIM ĐỀ TÀI  
Htên: Nguyn Gia Quang Đăng  
Hc v: Thc sỹ  
Đơn v: Khoa Công nghthông tin  
Email: nguyengiaquangdang@hotec.edu.vn  
TRƯỞNG KHOA  
TTRƯỞNG  
BMÔN  
CHNHIM  
ĐỀ TÀI  
Lê Như Dzi  
Đào ThHng Tuyết Nguyn Gia Quang Đăng  
HIU TRƯỞNG  
DUYT  
Tháng 10 năm 2020  
TUYÊN BBN QUYN  
Tài liu này thuc loi sách giáo trình nên các ngun thông tin có thể được phép  
dùng nguyên bn hoc trích dùng cho các mc đích về đào to và tham kho.  
Mi mc đích khác mang tính lch lc hoc sdng vi mc đích kinh doanh thiếu  
lành mnh sbnghiêm cm.  
LI GII THIU  
Giáo trình này được biên son da trên chương trình chi tiết môn hc bc cao đẳng  
chuyên ngành Hthng thông tin Khoa Công nghthông tin ca Trường Cao đẳng  
Kinh tế Kthut Thành PhHChí Minh.  
Ngày nay, do sphát trin không ngng ca mng internet toàn cu, HTML cũng  
ngày càng trnên phc tp và hoàn thin hơn để đáp ng được nhng yêu cu mi ny  
sinh trong quá trình phát trin đó (như âm thanh, hình nh động, v.v…). Người ta gi  
đó là nhng phiên bn ca HTML và đánh số để biu th. HTML 2, HTML 2+, HTML  
3, HTML 5,… là để chnhng phiên bn sau này.  
Mt trong nhng đim mnh ca HTML là mt văn bn bt knếu tuân thtiêu  
chun HTML đều có thhin lên màn hình hay in ra, tóm li là hiu được, bi bt kỳ  
loi phn mm hay máy tính nào mà người đọc có, không phân bit trình duyt nào  
(NetScape trên Windows hay Lynx trên UNIX, thm chí cho người khiếm thbng  
phn mm đặc bit).  
Đây là quyn giáo trình được biên son ln thnht cho môn hc này ti khoa Công  
nghthông tin ca nhà trường. Nhm cung cp kiến thc nn tng vngôn ngữ  
HTML, Javascript, C#, giúp hc sinh sinh viên nm vng và vn dng các kthut  
phbiến viết ng dng trên web chy trc tuyến trên mng.  
Từ đó, sinh viên có ththc các kiến thc chuyên sâu hơn. Trong tài liu này tác  
gisdng phương pháp lp trình trên ngôn ngC# truy xut trên môi trường web.  
Qua đó, giúp sinh viên nm bt kiến thc và knăng thc hành cơ bn để vn dng  
viết được các ng dng trong thc tin.  
Trong quá trình biên son chc chn giáo trình scòn nhiu thiếu sót và hn chế.  
Rt mong nhn được sự đóng góp ý kiến quý báu ca hc sinh sinh viên và các bn  
đọc để giáo trình ngày mt hoàn thin hơn.  
Thành phHChí Minh, ngày……tháng 10 năm 2020  
Tác gibiên son  
Nguyn Gia Quang Đăng  
KHOA CÔNG NGHTHÔNG TIN  
1
MC LC  
LI GII THIU........................................................................................................1  
GIÁO TRÌNH MÔN HC...........................................................................................6  
Chương 1: Gii thiu chung.........................................................................................7  
1.1. Nn tng ca Web ngôn ngHTML ..................................................................7  
1.1.1. Cơ bn vngôn ngHTML .........................................................................7  
1.1.2. Định dng Text ............................................................................................8  
1.1.3. Liên kết các trang web (Link) ....................................................................10  
1.1.4. Danh sách (List).........................................................................................11  
1.2. Các giao thc sdng cho Web.......................................................................12  
1.3. Các mô hình ng dng Web.............................................................................13  
1.3.1. Tt ctrong mt Server..............................................................................13  
1.3.2. Tách riêng Database Server........................................................................14  
1.3.3. Sdng Load Balancer (Reverse Proxy)....................................................15  
1.3.4. Dùng HTTP Accelerator (Caching Reverse Proxy) ....................................15  
1.3.5. Cu hình Master-Slave Database Replication.............................................16  
Chương 2: Định dng trang web vi CSS ..................................................................18  
2.1. Mô hình 3 lp trong thiết kế Web ....................................................................18  
2.2. Các loi CSS....................................................................................................19  
2.3. CSS In-line, out-line ........................................................................................20  
2.3.1. Các thành phn CSS...................................................................................20  
2.3.2. Nhóm nhiu đối tượng ...............................................................................21  
2.3.3. Thuc tính Class .......................................................................................21  
2.3.4. Thuc tính ID.............................................................................................22  
2.3.5. Ghi chú trong CSS .....................................................................................23  
2.3.6. Sdng CSS trong trang HTML................................................................23  
2.3.7. Các ví dáp dng ......................................................................................25  
2.4. Bài tp áp dng................................................................................................28  
Chương 3: Ngôn ngJavaScript ................................................................................30  
3.1. Gii thiu vJavaScript...................................................................................30  
3.2. Sdng JavaScript trong trang HTML ............................................................30  
3.2.1. Cú pháp cơ bn ca lnh ............................................................................31  
KHOA CÔNG NGHTHÔNG TIN  
2
3.2.2. Hin thmt dòng văn bn .........................................................................31  
3.2.3. Hin thhp thoi thông báo –Lnh alert().................................................32  
3.2.4. Giao tiếp vi người sdng – Lnh prompt() ............................................33  
3.2.5. Hi đáp người sdng – Lnh confirm() ...................................................34  
3.3. Biến, kiu dliu, biu thc, toán t................................................................35  
3.3.1. Biến ...........................................................................................................35  
3.3.2. Kiu dliu ...............................................................................................35  
3.3.3. Lnh, khi lnh trong JavaScript................................................................36  
3.3.4. Toán t& Biu thc trong JavaScript ........................................................37  
3.4. Câu lnh điu kin, lnh lp for........................................................................39  
3.4.1. Cu trúc lp trình rnhánh (Điu Kin) .....................................................39  
3.4.2. Cu trúc lp................................................................................................40  
3.5. Câu lnh while, switch, break, continue ...........................................................41  
3.6. Biến mng, hàm...............................................................................................43  
3.6.1. Mng..........................................................................................................43  
3.6.2. Hàm...........................................................................................................45  
3.7. DOM ...............................................................................................................50  
3.8. Skin.............................................................................................................55  
3.8.1. Khái nim skin và xlý skin ............................................................55  
3.8.2. Mt sskin trong JavaScript .................................................................57  
3.8.3. Các skin có sn ca mt số đối tượng....................................................57  
3.9. Bài tp áp dng................................................................................................59  
Chương 4: Kch bn trình ch....................................................................................60  
4.1. Gii thiu vngôn nglp trình Web động......................................................60  
4.2. Cài đặt cu hình Web Server IIS ......................................................................60  
4.3. Gii thiu Visual Studio...................................................................................63  
4.3.1. Tìm hiu v.Net Phatform.........................................................................63  
4.3.2. Tìm hiu v.Net Framework......................................................................64  
4.3.3. Tìm hiu vASP.Net .................................................................................68  
4.3.4. Nhng ưu đim ca ASP.Net .....................................................................69  
4.3.5. Quá trình xlý tp tin ASPX .....................................................................70  
4.4. To ng dng Web trên Visual Studio .............................................................70  
4.4.1. Khi động ASP.NET .................................................................................70  
4.4.2. Phân loi tp tin trong ASP.Net..................................................................73  
KHOA CÔNG NGHTHÔNG TIN  
3
4.5. Các thành phn giao din VS ...........................................................................74  
4.5.1. Solution Explorer.......................................................................................74  
4.5.2. Property/Toolbox.......................................................................................75  
4.6. Server Controls - Các điu khin chun ...........................................................76  
4.6.1. HTML Control...........................................................................................76  
4.6.2. ASP.Net Web Control................................................................................77  
4.7. Điu khin GridView.......................................................................................91  
4.7.1. Các thao tác định dng lưới........................................................................91  
4.7.2. Xsp xếp.............................................................................................97  
4.7.3. Xlý phân trang ......................................................................................100  
4.7.4. Tùy biến các ct.......................................................................................101  
4.7.5. Cp nht dliu trc tiếp trên lưới...........................................................104  
4.8. Điu khin DataList .......................................................................................110  
4.8.1. Sdng DataList để hin thdliu ........................................................110  
4.8.2. Cp nht dliu vi DataList...................................................................114  
4.9. Điu khin Repeater.......................................................................................121  
4.10. Bài tp áp dng ............................................................................................125  
Chương 5: Xây dng và qun lý ng dng...............................................................126  
5.1. Đối tượng Request .........................................................................................126  
5.2. Đối tượng Response.......................................................................................127  
5.2.1. Đối tượng Response.................................................................................127  
5.2.2. Ví dxlý cho phép người dùng download file.......................................128  
5.3. Session...........................................................................................................129  
5.3.1. Thuc tính & Phương thc.......................................................................130  
5.3.2. Sdng biến toàn cc vi Session ...........................................................131  
5.4. Application ....................................................................................................132  
5.4.1. Sdng biến Application.........................................................................132  
5.4.2. Duyt qua tp hp biến cha trong Application........................................132  
5.5. Cookies..........................................................................................................132  
5.5.1. Gii thiu.................................................................................................132  
5.5.2. Làm vic vi Cookies ..............................................................................133  
5.6. Global.asax....................................................................................................134  
5.6.1. Cu trúc tp tin Global.asax .....................................................................134  
5.6.2. Các skin trong tp tin Global.asax .......................................................135  
KHOA CÔNG NGHTHÔNG TIN  
4
5.7. Web.config ....................................................................................................137  
5.7.1 Cu trúc tp tin web.config .......................................................................137  
5.7.2. Các cu hình mc định .............................................................................139  
5.8. Bài tp áp dng..............................................................................................141  
Chương 6: Xây dng các thành phn truy xut dliu.............................................142  
6.1. Tìm hiu vADO.NET..................................................................................142  
6.2. Gii thiu.......................................................................................................142  
6.3. Kiến trúc ADO.NET ......................................................................................143  
6.4. Minh ha to kết ni cơ sdliu .................................................................144  
6.5. Các đối tượng trong ADO.NET .....................................................................144  
6.6. Đối tượng Connection....................................................................................146  
6.7. Đối tượng Command......................................................................................147  
6.8. Đối tượng DataReader ...................................................................................150  
6.9. Đối tượng DataAdapter..................................................................................150  
6.10. Đối tượng DataSet .......................................................................................152  
6.11. Đối tượng DataTable....................................................................................157  
6.12. Bài tp .........................................................................................................160  
Chương 7: Web Services .........................................................................................161  
7.1. Tìm hiu vWeb services ..............................................................................161  
7.2. Xây dng Web services .................................................................................163  
7.2.1. To Web Services trong Visual studio .Net..............................................163  
7.2.2. Kim tra Web Service..............................................................................165  
7.3. Sdng Web services....................................................................................167  
7.3.1. Sdng Web Services do người dùng xây dng ......................................167  
7.3.2. Sdng Web Services được cung cp min phí trên mng.......................168  
7.4. Xây dng Web services truy xut dliu.......................................................169  
7.5. Bài tp ...........................................................................................................171  
TÀI LIU THAM KHO .......................................................................................172  
DANH MC HÌNH NH .......................................................................................173  
DANH MC BNG BIU .....................................................................................175  
KHOA CÔNG NGHTHÔNG TIN  
5
GIÁO TRÌNH MÔN HC  
Tên môn hc: Xây dng ng dng web  
Mã môn hc: MH3101346  
Vtrí, tính cht, ý nghĩa và vai trò ca môn hc:  
- Vtrí: là môn hc chuyên ngành, được btrí sau môn hc Thiết kế Web, hc k4.  
- Tính cht: là môn hc bt buc  
- Ý nghĩa và vai trò ca môn hc: giúp cho người hc trang bị được kiến thc vlp  
trình trên môi trường ng dng web.  
Mc tiêu ca môn hc:  
Vkiến thc:  
- Trình bày được các mô hình lp trình Web  
- Trình bày được các giao thc ca công nghWeb  
- Trình bày được các thành phn ca ngôn ngJavaScript  
- Trình bày được các chc năng ca Web Server Control  
- Trình bày được các kiến trúc ca cng nghADO.NET  
- Trình bày được qui trình kết ni dliu  
Vknăng:  
- Vn dng được ngôn ngJavaScript để viết các kch bn  
- Vn dng được ngôn nglp trình trong xlý dliu.  
- Vn dng được Hqun trCSDL SQL Server tương tác vi Web.  
- Sdng và đánh giá được các phương pháp truy vn dliu.  
- Sdng được các đối tượng ca ADO.NET  
- Xây dng được ng dng Web có sdng cơ sdliu  
Vnăng lc tchvà trách nhim:  
- Cn thn, nghiêm túc trong nghiên cu  
- Có khnăng xem các tài liu hướng dn, đọc sách  
- Cn thn và chính xác khi làm vic vi cơ sdliu  
- Có khnăng vn dng môn hc lp trình ng dng trên Web để gii quyết vn đề  
trong thc tế.  
Ni dung ca môn hc:  
KHOA CÔNG NGHTHÔNG TIN  
6
Chương 1: Gii thiu chung  
CHƯƠNG 1: GII THIU CHUNG  
Gii thiu: Khái nim tng quan vcu trúc ngôn ngweb HTML  
Mc tiêu:  
- Trình bày được các khái nim vmô hình ng dng Web  
- Trình bày được các giao thc sdng cho Web  
- Sdng được ngôn ngHTML để thiết kế trang Web  
Ni dung chính:  
1.1. Nn tng ca Web ngôn ngHTML  
1.1.1. Cơ bn vngôn ngHTML  
* Cu trúc  
HTML bao gm 3 thẻ để xác định cu trúc ca trang web bao gm:  
<htm></html>  
<head></head>  
<body></body>  
* Thdng văn bn  
Mc dù có rt nhiu thẻ để định dng văn bn, nhng thsau đây là nhng thcơ  
bn nht mà gn như bt cmt trang web nào cũng phi sdng:  
<p>: bt đầu mt đon văn bn mi  
<br>: xung dòng  
<h1></h1>, <h2></h2>,…: đặt dòng văn bn nm trong cp thlà tiêu đề  
(heading).  
* Thghi chú  
Cũng như các ngôn nglp trình, để cho phép người viết trang web đặt nhng ghi  
chú dành riêng cho mình vào trong trang web, HTML cung cp thghi chú. Đây là thẻ  
đặc bit so vi nhng thkhác:  
<!-- ni dung ghi chú -->  
KHOA CÔNG NGHTHÔNG TIN  
7
Chương 1: Gii thiu chung  
Ghi nhthqua ý nghĩa HTML 4.0 có tương đối nhiu th, để nhớ được nhiu,  
người viết thường phi hiu được ý nghĩa tên ca mi th. Các thtrong HTML  
thường là viết tt ca nhng tgi nhnhư: Paragraph, BReack,…  
1.1.2. Định dng Text  
* Định dng kiu chữ  
Trong các tài liu, văn bn chúng ta thường sdng các kiu chữ đậm, nghiêng,  
gch dưới,…ví dsau minh hocác thẻ được dùng định dng kiu ch:  
<html>  
<body>  
<b>In đậm</b> <br>  
<strong>In rt đậm </strong><br>  
<font size="4">c</font><big>hln </big><br>  
<em>nhn mnh</em><br>  
<i>in nghiêng </i><br>  
<small>chnh</small><br>  
Công thc hoá hc ca nước: H<sub>2</sub>O<br>  
X bình phương: X<sup> 2 </sup>  
</body>  
</html>  
Để xem code HTML ca mt trang web đã có tIE, trên menu View, chn mc  
Source. Bn có thhc hi được nhiu điu bng cách xem code HTML ca nhng  
trang web được thiết kế chuyên nghip nhưng hãy nhrng nhng trang web đẹp luôn  
được viết rt công phu và thường sdng nhiu công c(tool) htr.  
* Font ch, màu sc và canh lề  
<font face="…" size="…" color="#HHHHHH">…</font>  
<p align="left/right/center">  
d1:  
KHOA CÔNG NGHTHÔNG TIN  
8
Chương 1: Gii thiu chung  
<p align="center">  
<font face="Algerian" size="5">Computer Joke </font>  
<p><u>Kthut viên</u>:  
<font face="Arial">Máy tính ca anh có ổ đĩa mm ch?</font>  
<p><u>Khách</u>:  
<i><font face="Times New Roman">Tôi không nhìn thy bên trong. Có chữ  
&quot; <b>Intel Pentium <font color="#FF0000">Inside</font>  
</b>&quot;</font></i>  
</p>  
Thuc tính ca mt thẻ  
Mt thông tin định dng có thgm nhiu chi tiết, trong ví dtrên, font chshin  
thcho mt chui văn bn được chỉ định qua th<font> tuy nhiên, font chli gm  
nhiu chi tiết như: tên font, kích thước, màu sc,… Các thông tin chi tiết được gi là  
các thuc tính ca th. Mt thcó thcó nhiu thuc tính. Bn nên đặt giá trca  
thuc tính trong du ngoc kép.  
Định dng trước ni dung văn bn Web browser skhông quan tâm đến cách bn  
trình bày đon code HTML trong file .html mà chda vào các thẻ để trình bày ni  
dung trang web.  
Th<pre> được dùng khi bn mun yêu cu web browser "tôn trng" các khong  
trng và xung dòng trong đon code HTML ca mình.  
d2:  
<!DOCTYPE html>  
<html>  
<head>  
<title>Vi du the pre trong HTML</title>  
</head>  
<body>  
<pre>  
Phan van ban  
KHOA CÔNG NGHTHÔNG TIN  
9
Chương 1: Gii thiu chung  
nay se duoc giu nguyen  
dinh dang, khoang cach le va  
vi tri cua cac tu.  
</pre>  
</body>  
</html>  
1.1.3. Liên kết các trang web (Link)  
URL: (Uniform Resource Locator), là mt đường dn được dùng trên Internet để  
chti mt trang web cthnào đó. Thut ngthường dùng thay cho url là : "địa ch"  
Domain name: Là tên dnhca mt địa ch. Nhng tên này được qun lý bi mt  
tchc quc tế, đảm bo không có hai địa chkhác nhau nào có cùng tên. Nếu bn  
mun website ca mình có mt tên gi nhớ để mi người có thtruy cp, bn sphi  
đem tên đó đi đăng ký.  
Trong domain name, phn cui cùng dùng để phân loi các website:  
* Com : commercial – website thương mi, kinh doanh  
* Edu : education – website vgiáo dc, đào to  
* Gov : government – website ca chính phủ  
* vn, uk, au, … : vietnam, united kingdom, austratlia – website ca quc gia nào.  
* To liên kết  
HTML dùng th<a> (anchor) để to liên kết ti mt trang web. Th<a> có ba  
thuc tính chính là:  
* href : địa chca trang web mun liên kết  
* target : ca sshin thtrang web  
* name : tên ca mi liên kết  
Ví d3:  
Thuc tính target chra ca ssdùng để mtrang web mi. Nếu không đặt giá trị  
cho target, trang web bn đang xem sbthay thế bng trang web mi. Để mtrang  
web trong mt ca smi, đặt target="_blank"  
KHOA CÔNG NGHTHÔNG TIN  
10  
Chương 1: Gii thiu chung  
*. Liên kết trong cùng trang web  
Nếu như cho bn được quyn đặt tên cho các thca HTML, có lbn sthay <a>  
bng <l>  
(Link) thì đúng hơn. Tuy nhiên <a> thc smang ý nghĩa là mt mneo (anchor)  
khi bn dùng để liên kết ti mt đon văn bn nào đó trong chính bn thân trang web.  
Thuc tính name ca <a> dùng để đặt tên cho đon văn bn sliên kết ti. Chú ý,  
giá trca name có du # đứng trước.  
Ví d4:  
<a href="#EndOfPage">Đến cui trang</a>  
……… <!-- nhiu dòng -->  
<a name="#EndOfPage">cui trang</a>  
* Liên kết vi địa chemail  
Để cho phép người đọc gi mail cho bn bng cách click vào liên kết, gán giá trị  
"mailto:địa chemail" cho thuc tính href.  
1.1.4. Danh sách (List)  
Danh sách gm 2 loi: có thtvà không có thtự  
Danh sách trong HTML tương tư như định dng Bullets and Numbering trong  
Word. Thông thường, chúng ta ít phân bit gia danh sách có thtvà không có thứ  
t. Vi danh sách có tht, mi mc sẽ được đánh tht1, 2, 3 hay a, b, c, … trong  
khi vi danh sách không có tht, mi mc sbt đầu bng du –, ,,à, o,…  
Trong HTML, mi mc trong danh sách được bt đầu bng th<li>. Các mc  
trong danh sách li được đặt trong mt thdanh sách. HTML có các thdanh sách:  
<ol> : ordered list – danh sách có thtự  
<ul> : unordered list – danh sách không có thtự  
Ví d5:  
Ni dung môn hc lp trình web cơ bn  
<ol>  
<li>HTML </li>  
KHOA CÔNG NGHTHÔNG TIN  
11  
Chương 1: Gii thiu chung  
<li>JavaScript </li>  
</ol>  
Kết qu:  
Ni dung môn hc lp trình web cơ bn  
1. HTML  
2. JavaScript  
Ví d:  
Ni dung môn hc lp trình web cơ bn  
<ul>  
<li>HTML </li>  
<li>JavaScript </li>  
</ul>  
Kết qu:  
Ni dung môn hc lp trình web cơ bn  
• HTML  
• JavaScript  
Thuc tính type ca các thdanh sách cho phép bn định li các sththay  
bullet hin thị đầu mi mc trong danh sách. Các giá trca type:  
Bng 1-1: Kết qubng danh sách  
1.2. Các giao thc sdng cho Web  
Thuc tính HREF (tham chiếu siêu văn bn) được dùng để chỉ địa chhay URL ca  
tài liu hoc file được liên kết.  
Cú pháp ca HREF là:  
KHOA CÔNG NGHTHÔNG TIN  
12  
Chương 1: Gii thiu chung  
<A HREF = protocol://host.domain:port/path/filename>Hypertext</A>  
Trong đó,  
Giao thc – Đây là loi giao thc. Mt sgiao thc thường dùng:  
http – giao thc truyn siêu văn bn  
telnet – mmt phiên telnet  
gopher – tìm kiếm file  
ftp – giao thc truyn file  
mailto – gi thư đin tử  
Host.domain – Đây là địa chInternet ca máy chủ  
Port - Cng phc vca máy chủ đích  
HyperText – Đây là văn bn hay hình nh mà người dùng cn nhp vào để kích hot  
liên kết  
1.3. Các mô hình ng dng Web  
Có rt nhiu mô hình cài đặt Server dành cho ng dng (Application Server) và mi  
mô hình li có sự ưu vit khác nhau. Để la chn mô hình Server ti ưu cho ng dng  
ca mình bn cn da vào các yếu tnhư hiu sut, khnăng mrng, tính sn có, độ  
tin cy, giá cvà khnăng qun lý.  
Dưới đây là 5 mô hình Cloud Server dành cho Application phbiến nht để tham  
kho. Các mô hình này có thsdng kết hp ln nhau và phù hp vi tng môi trường  
cũng như tng loi ng dng khác nhau.  
1.3.1. Tt ctrong mt Server  
Đây là mô hình đơn gin nht khi tt ctài nguyên ca ng dng đều được đặt chung  
trên mt máy chduy nht. Mt gói tài nguyên ng dng bao gm các web server,  
application server và database server. Chng hn như gói LAMP bao gm Linux,  
Apache, MySQL và PHP trên cùng mt server.  
KHOA CÔNG NGHTHÔNG TIN  
13  
Chương 1: Gii thiu chung  
Hình 1-1 Sdng chung phn tài nguyên server  
Ưu đim ca mô hình này là sự đơn gin, nhanh chóng khi cài đặt ng dng. Tuy  
nhiên nó chlà mô hình cơ bn và sgây khó khăn trong vic mrng cũng như tách  
bit các thành phn ca ng dng vi nhau. ng dng và database ca nó sdng chung  
phn tài nguyên ca cloud server (CPU, bnh, I/O,…) khiến hiu sut suy gim và  
khó xác định li.  
1.3.2. Tách riêng Database Server  
Mô hình này tách bit hthng qun lý database vi phn còn li để tránh tranh chp  
tài nguyên gia ng dng và database. Tính bo mt cũng có thtăng cường bng cách  
đặt database trong mt private network.  
Hình 1-1 Tách bit hthng qun lý database  
Ưu đim ca mô hình này là hiu sut sẽ được ci thin do ng dng và database sử  
dng tài nguyên riêng. Ngoài ra có thtăng thêm tài nguyên cho server khi có nhu cu  
mrng. Tuy nhiên nó đòi hi cài đặt phc tp hơn mô hình all-in-one và nếu như hai  
server ng dng và database có độ trln (do khong cách quá xa hoc băng thông quá  
thp so vi lượng dliu truyn ti) thì hiu sut sbsuy gim.  
KHOA CÔNG NGHTHÔNG TIN  
14  
Chương 1: Gii thiu chung  
1.3.3. Sdng Load Balancer (Reverse Proxy)  
Để ci thin hiu sut và độ tin cy trong môi trường máy ch, chúng ta có thphân  
phi vic xlý request trên nhiu máy chbng load balancer. Nếu mt trong các máy  
chbli, load balancer sgi các yêu cu xlý lưu lượng đến các máy chkhác cho  
đến khi máy chbli hot động trli bình thường.  
Load balancer cũng có thsdng để phc vcho nhiu ng dng thông qua cùng  
mt tên min và cng bng mt layer application reverse proxy. Các phn mm có khả  
năng load balancer reverse proxy có thkể đến HAProxy, Nginx hay Varnish.  
Hình 1-2 Mô hình máy chload balancer  
Ưu đim ca mô hình này là có thmrng bng cách thêm nhiu máy ch, và chng  
li DDOS bng cách hn chế kết ni ca người dùng xung mc tn sut hp lý. Tuy  
nhiên nếu load balacer không đủ hiu sut hoc bcu hình kém thì có thtrthành nút  
cchai gây tc nghn hthng cloud.  
Ngoài ra đim yếu chí mng ca mô hình này là nếu máy chload balancer bli thì  
chthng ssp theo. Các vn đề như nơi thc hin chm dt SSL và xđòi hi  
session cũng cn phi xem xét.  
1.3.4. Dùng HTTP Accelerator (Caching Reverse Proxy)  
Các kthut như dùng HTTP accelerator hay caching HTTP reverse proxy có thể  
gim thi gian ti ni dung tserver đến người dùng. HTTP accelerator slưu trni  
dung mà ng dng trvngười dùng vào bnhln đầu và nếu sau này có yêu cu truy  
cp tương t, HTTP accelerator chcn ly ni dung trong bnhra để trvngười  
KHOA CÔNG NGHTHÔNG TIN  
15  
Chương 1: Gii thiu chung  
dùng mà không cn tương tác vi web server na. Các phn mm tăng tc HTTP  
trên cloud server có thkể đến Varnish, Squid hay Nginx.  
Hình 1-3 Mô hình Accelertor  
Mô hình này rt hu ích trong vic ci thin hiu sut các website có ni dung nng  
hay có nhiu tài nguyên được truy cp thường xuyên, do cho phép gim ti CPU trên  
web server thông qua bnhcache và nén. HTTP accelerator server có thsdng như  
mt load balancer server, và các phn mm caching cũng được dùng để bo vhthng  
chng li các cuc tn công DDOS.  
Hai đim đáng chú ý khi sdng HTTP accelerator đó là cn điu chnh để được  
hiu sut tt nht, và nếu tltái sdng bnhcache thp thì hiu sut cloud server  
có thbsuy gim.  
1.3.5. Cu hình Master-Slave Database Replication  
Nếu như hthng ca bn có syêu cu đọc thc hin nhiu hơn syêu cu ghi (ví  
dnhư CMS) thì có thcu hình master-slave database replicate để ci thin hiu sut.  
Mô hình này đòi hi mt master database và mt hay nhiu slave database. Yêu cu cp  
nht dliu sẽ được gi cho master và các yêu cu đọc dliu sẽ được phân phi trên  
các slave.  
KHOA CÔNG NGHTHÔNG TIN  
16  
Chương 1: Gii thiu chung  
Hình 1-4 cu hình master-slave database replicate  
Ưu đim ca mô hình này là ci thin hiu sut đọc dliu tdatabase ca ng dng.  
Tuy nhiên ng dng cn xác định nút database nào để ghi vào nút nào để đọc. Ngoài ra  
vic cp nht dliu cho các slave là không đồng bnên có khnăng dliu ng dng  
đọc được không phi là mi nht. Đim yếu ca mô hình này là không có phương án dự  
phòng cho trường hp master bli, nếu như xy ra điu này thì quá trình cp nht dữ  
liu sbgián đon cho đến khi master phc hi.  
KHOA CÔNG NGHTHÔNG TIN  
17  
Tải về để xem bản đầy đủ
pdf 178 trang yennguyen 12/04/2022 4120
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Xây dựng ứng dụng web - Nghề: Hệ thống thông tin", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfgiao_trinh_xay_dung_ung_dung_web_nghe_he_thong_thong_tin.pdf