<!DOCTYPE html>
    <html lang="vi" xmlns="http://www.w3.org/1999/xhtml" prefix="og: http://ogp.me/ns#">
    <head>
<title>Hạn Chế Http Requests để tối ưu hóa websit</title>
<meta name="description" content="Hạn Chế Http Requests để tối ưu hóa websit - Savefile - Blog - https&#x3A;&#x002F;&#x002F;tocdoviet.com&#x002F;blog&#x002F;savefile&#x002F;Tai-lieu-Website&#x002F;han-che-http-requests-de-toi-uu-hoa-websit-197.html">
<meta name="author" content="Tốc Độ Việt - Dịch vụ Hosting, Tên miền, Máy chủ, Thiết kế Website">
<meta name="copyright" content="Tốc Độ Việt - Dịch vụ Hosting, Tên miền, Máy chủ, Thiết kế Website [loc.thb@bazan.vn]">
<meta name="generator" content="NukeViet v4.5">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta property="og:title" content="Hạn Chế Http Requests để tối ưu hóa websit">
<meta property="og:type" content="website">
<meta property="og:description" content="Savefile - Blog - https&#x3A;&#x002F;&#x002F;tocdoviet.com&#x002F;blog&#x002F;savefile&#x002F;Tai-lieu-Website&#x002F;han-che-http-requests-de-toi-uu-hoa-websit-197.html">
<meta property="og:site_name" content="Tốc Độ Việt - Dịch vụ Hosting, Tên miền, Máy chủ, Thiết kế Website">
<meta property="og:url" content="https://tocdoviet.com/blog/savefile/Tai-lieu-Website/han-che-http-requests-de-toi-uu-hoa-websit-197.html">
<link rel="shortcut icon" href="https://tocdoviet.com/favicon.ico">
<link rel="canonical" href="https://tocdoviet.com/blog/savefile/Tai-lieu-Website/han-che-http-requests-de-toi-uu-hoa-websit-197.html">
<link rel="alternate" href="https://tocdoviet.com/blog/rss/" title="Blog" type="application/rss+xml">
<link rel="alternate" href="https://tocdoviet.com/blog/rss/Cau-hoi-thuong-gap/" title="Blog - Câu hỏi thường gặp" type="application/rss+xml">
<link rel="alternate" href="https://tocdoviet.com/blog/rss/Tai-lieu-Ten-Mien/" title="Blog - Tài liệu Tên Miền" type="application/rss+xml">
<link rel="alternate" href="https://tocdoviet.com/blog/rss/Tai-lieu-Hosting/" title="Blog - Tài liệu Hosting" type="application/rss+xml">
<link rel="alternate" href="https://tocdoviet.com/blog/rss/Tai-lieu-May-Chu/" title="Blog - Tài liệu Máy Chủ" type="application/rss+xml">
<link rel="alternate" href="https://tocdoviet.com/blog/rss/Tai-lieu-Ma-Nguon/" title="Blog - Tài liệu Mã Nguồn" type="application/rss+xml">
<link rel="alternate" href="https://tocdoviet.com/blog/rss/Tai-lieu-SEO/" title="Blog - Tài liệu SEO" type="application/rss+xml">
<link rel="alternate" href="https://tocdoviet.com/blog/rss/Tai-lieu-Website/" title="Blog - Tài liệu Website" type="application/rss+xml">
<link rel="alternate" href="https://tocdoviet.com/blog/rss/Tai-lieu-Phan-Mem/" title="Blog - Tài liệu Phần Mềm" type="application/rss+xml">
<link rel="alternate" href="https://tocdoviet.com/blog/rss/Tai-lieu-May-Tinh/" title="Blog - Tài liệu Máy Tính" type="application/rss+xml">
<link rel="preload" as="style" href="https://tocdoviet.com/assets/css/font-awesome.min.css" type="text/css">
<link rel="preload" as="style" href="https://tocdoviet.com/themes/default/css/bootstrap.min.css" type="text/css">
<link rel="preload" as="style" href="https://tocdoviet.com/themes/default/css/style.css" type="text/css">
<link rel="preload" as="style" href="https://tocdoviet.com/themes/default/css/style.responsive.css" type="text/css">
<link rel="preload" as="style" href="https://tocdoviet.com/themes/default/css/news.css" type="text/css">
<link rel="preload" as="style" href="https://tocdoviet.com/themes/default/css/custom.css" type="text/css">
<link rel="preload" as="script" href="https://tocdoviet.com/assets/js/jquery/jquery.min.js" type="text/javascript">
<link rel="preload" as="script" href="https://tocdoviet.com/assets/js/language/vi.js" type="text/javascript">
<link rel="preload" as="script" href="https://tocdoviet.com/assets/js/DOMPurify/purify3.js" type="text/javascript">
<link rel="preload" as="script" href="https://tocdoviet.com/assets/js/global.js" type="text/javascript">
<link rel="preload" as="script" href="https://tocdoviet.com/assets/js/site.js" type="text/javascript">
<link rel="preload" as="script" href="https://tocdoviet.com/themes/default/js/news.js" type="text/javascript">
<link rel="preload" as="script" href="https://tocdoviet.com/themes/default/js/main.js" type="text/javascript">
<link rel="preload" as="script" href="https://tocdoviet.com/themes/default/js/custom.js" type="text/javascript">
<link rel="preload" as="script" href="https://tocdoviet.com/themes/default/js/bootstrap.min.js" type="text/javascript">
<link rel="stylesheet" href="https://tocdoviet.com/assets/css/font-awesome.min.css">
<link rel="stylesheet" href="https://tocdoviet.com/themes/default/css/bootstrap.min.css">
<link rel="stylesheet" href="https://tocdoviet.com/themes/default/css/style.css">
<link rel="stylesheet" href="https://tocdoviet.com/themes/default/css/style.responsive.css">
<link rel="StyleSheet" href="https://tocdoviet.com/themes/default/css/news.css">
<link rel="stylesheet" href="https://tocdoviet.com/themes/default/css/custom.css">
<style>
#gom-all-in-one{margin-bottom: 150px;}
@-webkit-keyframes phone-vr-circle-fill {
0% {-webkit-transform: rotate(0) scale(1) skew(1deg); }
10% {-webkit-transform: rotate(-25deg) scale(1) skew(1deg);}
20% {-webkit-transform: rotate(25deg) scale(1) skew(1deg);}
30% {-webkit-transform: rotate(-25deg) scale(1) skew(1deg);}
40% {-webkit-transform: rotate(25deg) scale(1) skew(1deg);}
50% {-webkit-transform: rotate(0) scale(1) skew(1deg);}
100% {-webkit-transform: rotate(0) scale(1) skew(1deg);}
}
@-webkit-keyframes zoom{0%{transform:scale(.9)}70%{transform:scale(1);box-shadow:0 0 0 15px transparent}100%{transform:scale(.9);box-shadow:0 0 0 0 transparent}}@keyframes zoom{0%{transform:scale(.9)}70%{transform:scale(1);box-shadow:0 0 0 15px transparent}100%{transform:scale(.9);box-shadow:0 0 0 0 transparent}}
#button-contact-vr{right:0}
.phone-bar a{
left:auto;right:30px;padding:8px 55px 7px 15px
}
#button-contact-vr.active #gom-all-in-one .button-contact
{
margin-left:100%
}
#button-contact-vr{bottom:30%}
#gom-all-in-one #zalo-vr {
transition: 1s all;
-moz-transition: 1s all;
-webkit-transition: 1s all;
}
#zalo-vr .phone-vr-circle-fill {
box-shadow: 0 0 0 0 #2196f3;
background-color: rgba(33,150,243,.7);
}
.phone-vr-circle-fill {
width: 65px;
height: 65px;
top: 12px;
left: 12px;
position: absolute;
box-shadow: 0 0 0 0 #c31d1d;
background-color: rgba(230,8,8,.7);
border-radius: 50%;
border: 2px solid transparent;
-webkit-animation: phone-vr-circle-fill 2.3s infinite ease-in-out;
animation: phone-vr-circle-fill 2.3s infinite ease-in-out;
transition: all .5s;
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
-webkit-animuiion: zoom 1.3s infinite;
animation: zoom 1.3s infinite;
}
.phone-vr-img-circle a {
display: block;
line-height: 37px;
}
.phone-vr-img-circle img {
max-height: 25px;
max-width: 27px;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
-moz-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
-o-transform: translate(-50%,-50%);
}
#zalo-vr .phone-vr-img-circle {
background-color: #2196f3;
}
.phone-vr-img-circle {
background-color: #e60808;
width: 40px;
height: 40px;
line-height: 40px;
top: 25px;
left: 25px;
position: absolute;
border-radius: 50%;
overflow: hidden;
display: flex;
justify-content: center;
-webkit-animation: phonering-alo-circle-img-anim 1s infinite ease-in-out;
animation: phone-vr-circle-fill 1s infinite ease-in-out;
}
#button-contact-vr .button-contact .phone-vr {
position: relative;
visibility: visible;
background-color: transparent;
width: 90px;
height: 90px;
cursor: pointer;
z-index: 11;
-webkit-backface-visibility: hidden;
-webkit-transform: translateZ(0);
transition: visibility .5s;
left: 0;
bottom: 0;
display: block;
}
#gom-all-in-one #phone-vr {
transition: .7s all;
-moz-transition: .7s all;
-webkit-transition: .7s all;
}
#button-contact-vr .button-contact {
position: relative;
margin-top: 5px;
}
#phone-vr .phone-vr-circle-fill {
opacity: .7;
box-shadow: 0 0 0 0 #d33;
}
.phone-bar a, #phone-vr .phone-vr-circle-fill, #phone-vr .phone-vr-img-circle, #phone-vr .phone-bar a {
background-color: #d33;
}
#button-contact-vr {
bottom: 30%;
}
#button-contact-vr {
position: fixed;
bottom: 0;
z-index: 99999;
}
#popup-showroom-vr, div#popup-form-contact-vr {
display: none;
}
.bg-popup-vr {
position: absolute;
left: 0;
top: 0;
background: rgb(51 51 51/50%);
width: 100%;
height: 100vh;
}
@media (max-width: 673px)
div#popup-form-contact-vr .content-popup-vr {
display: block;
}
.content-popup-vr {
background: #fff;
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%,-50%);
width: 95%;
border-radius: 5px;
box-shadow: 0 0 14px 5px rgb(0 0 0/49%);
max-width: 600px;
display: flex;
}
.content-popup-vr .content-popup-div-vr {
width: 100%;
padding: 25px;
}
.content-popup-vr .close-popup-vr {
font-family: sans-serif;
width: 23px;
height: 23px;
background: #000;
position: absolute;
top: -10px;
right: -10px;
color: #fff;
text-align: center;
line-height: 23px;
font-size: 17px;
border-radius: 50%;
cursor: pointer;
}
</style>
<style type="text/css">
	body{background: #fff;}
</style>
<style type="text/css"></style>
    </head>
    <body>
<div id="print">
	<div id="hd_print">
		<h2 class="pull-left">Tốc Độ Việt - Dịch vụ Hosting, Tên miền, Máy chủ, Thiết kế Website</h2>
		<p class="pull-right"><a title="Tốc Độ Việt - Dịch vụ Hosting, Tên miền, Máy chủ, Thiết kế Website" href="https://tocdoviet.com/">https://tocdoviet.com</a></p>
	</div>
	<div class="clear"></div>
	<hr />
	<div id="content">
		<h1>Hạn Chế Http Requests để tối ưu hóa websit</h1>
		<ul class="list-inline">
			<li>Thứ tư - 24/07/2013 14:00</li>
			<li class="hidden-print txtrequired"><em class="fa fa-print">&nbsp;</em><a title="In ra" href="javascript:;" onclick="window.print()">In ra</a></li>
			<li class="hidden-print txtrequired"><em class="fa fa-power-off">&nbsp;</em><a title="Đóng cửa sổ này" href="javascript:;" onclick="window.close()">Đóng cửa sổ này</a></li>
		</ul>
		<div class="clear"></div>
		<div id="hometext">
						<div class="pull-left imghome">
				<img alt="Hạn Chế Http Requests để tối ưu hóa websit" src="https://tocdoviet.com/assets/blog/2013_07/firebug_loading_time.jpg" width="100" class="img-thumbnail" />
			</div>
			Mỗi khi người dùng truy xuất một trang web của bạn thì sau khi trang HTML được trả về cho trình duyệt, sau đó trình duyệt sẽ biên dịch các mã HTML này để nhận biết các đối tượng cần tải về sau đó như: tài liệu định dạng hình ảnh (css), các đoạn script, video, audio… sẽ được lần lượt gửi tới server thông qua giao thức HTTP (HTTP request).
		</div>
		<div id="bodytext" class="clearfix">
			Giữa những thời gian gửi request và nhận phản hồi (response) này được chia làm nhiều giai đoạn như sau:
<ul>
	<li><strong>DNS Look up</strong>: Đầu tiên trình duyệt sẽ kiểm tra xem đối tượng cần được gọi nằm ở server lưu trữ nào. Trong bài này tôi không đề cập đến việc tối ưu tốc độ của yếu tố này. Bởi vì yếu tố này phụ thuộc vào đường truyền mạng của bạn tới máy chủ DNS, tuy nhiên thường máy tính của bạn hoặc các ISP sẽ tự động lưu lại thông tin DNS này vào bộ nhớ cache để tiết kiệm thời gian look up cho các lần truy cập sau.</li>
	<li><strong>Connecting</strong>: Mở kết nối đến server lưu trữ web.</li>
	<li><strong>Sending</strong>: Quá trình gửi yêu cầu đi.</li>
	<li><strong>Waiting</strong>: Quá trình chờ server xử lý.</li>
	<li><strong>Receiving</strong>: Quá trình tải đối tượng (hay file) về máy tính của bạn.</li>
</ul>
Xem hình minh họa mô tả bằng Firebug dưới đây:<br />
&nbsp;
<div style="text-align: center;">
<div class="image-center"><img alt="" height="437" src="https://tocdoviet.com/uploads/blog/2013_07/firebug_loading_time.jpg" style="height: 437px; width: 600px;" width="600" /></div>
<br />
&nbsp;</div>
Qua hình minh họa ở trên bạn cũng nhận thấy quá trình chờ là quá trình lâu nhất. Các quá trình khác yếu tố ảnh hưởng hầu như là tốc độ đường truyền của bạn đối với server. Quá trình chờ này theo tôi hiểu thì sau khi yêu cầu được server nhận, trên server sẽ xảy ra quá trình xử lý như sau:

<ul>
	<li>Phân tích yêu cầu (request).</li>
	<li>Nhận biết loại file mà trình duyệt yêu cầu thông qua request header (trong firebug bạn có thể xem thông tin request header bằng cách bấm vào dấu + ở đầu mỗi request). Ví dụ: file hình, file video, script, css…</li>
	<li>Xác định vị trí của file.</li>
	<li>Đọc nội dung file.</li>
	<li>Chia ra thành các package rồi truyền tải dữ liệu qua giao thức HTTP.</li>
</ul>
Do đó, điều đầu tiên bạn cần làm để tăng tốc website là giảm số lượng đối tượng cần được load trong website của bạn để giảm bớt quá trình xử lý từ 1-4 ở server. Những yếu tố cần giảm tải:<br />
1. Giảm bỏ những hình ảnh, headers, style… không cần thiết.<br />
2. Gộp các hình ảnh bằng thủ thuật css sprite (tôi sẽ viết bài về vấn đề này sau).<br />
3. Gom các đoạn script trong HTML vào trong file javascript để giảm tải dung lượng của HTML document và gộp các file javascript này lại nếu có thể.<br />
Sau đây là ví dụ gộp những file liên kết ngoại vào một chỗ. Ví dụ như thay vì bạn gọi 3 files css cho website của bạn thì gộp vào thành một file.
<pre>
<code class="language-html">&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;/body.css&quot;&gt;
&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;/side.css&quot;&gt;
&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;/footer.css&quot;/&gt;</code></pre>
Chuyển đoạn trên thành:

<pre>
<code class="language-html">&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;/style.css&quot;&gt;</code></pre>
Tất nhiên bạn phải copy toàn bộ nội dung từ body.css và footer.css vào style.css. &nbsp; &nbsp;&nbsp;
		</div>
	</div>
	<div id="footer" class="clearfix">
		<div id="url">
			<strong>URL của bản tin này: </strong><a href="https://tocdoviet.com/blog/savefile/Tai-lieu-Website/han-che-http-requests-de-toi-uu-hoa-websit-197.html" title="Hạn Chế Http Requests để tối ưu hóa websit">https://tocdoviet.com/blog/savefile/Tai-lieu-Website/han-che-http-requests-de-toi-uu-hoa-websit-197.html</a>

		</div>
		<div class="clear"></div>
		<div class="copyright">
			&copy; Tốc Độ Việt - Dịch vụ Hosting, Tên miền, Máy chủ, Thiết kế Website
		</div>
		<div id="contact">
			<a href="mailto:loc.thb@bazan.vn">loc.thb@bazan.vn</a>
		</div>
	</div>
</div>
        <div id="timeoutsess" class="chromeframe">
            Bạn đã không sử dụng Site, <a onclick="timeoutsesscancel();" href="https://tocdoviet.com/#">Bấm vào đây để duy trì trạng thái đăng nhập</a>. Thời gian chờ: <span id="secField"> 60 </span> giây
        </div>
        <div id="openidResult" class="nv-alert" style="display:none"></div>
        <div id="openidBt" data-result="" data-redirect=""></div>
        <div id="button-contact-vr" class=""><div id="gom-all-in-one"><div id="zalo-vr" class="button-contact"><div class="phone-vr"><div class="phone-vr-circle-fill"></div><div class="phone-vr-img-circle">
<a target="_blank" href="https://zalo.me/0888037777">
<img src="https://tocdoviet.com/themes/default/images/zalo.png">
</a></div></div></div><div id="phone-vr" class="button-contact"><div class="phone-vr"><div class="phone-vr-circle-fill"></div><div class="phone-vr-img-circle">
<a href="tel:0888037777">
<img src="https://tocdoviet.com/themes/default/images/phone.png">
</a></div></div></div></div></div><div id="popup-form-contact-vr"><div class="bg-popup-vr"></div><div class="content-popup-vr" id="loco-" style=" "><div class="content-popup-div-vr"></div><div class="close-popup-vr">x</div></div></div><div id="popup-showroom-vr"><div class="bg-popup-vr"></div><div class="content-popup-vr" id="loco-" style=" "><div class="content-popup-div-vr"></div><div class="close-popup-vr">x</div></div></div>
<script src="https://tocdoviet.com/assets/js/jquery/jquery.min.js"></script>
<script>var nv_base_siteurl="/",nv_lang_data="vi",nv_lang_interface="vi",nv_name_variable="nv",nv_fc_variable="op",nv_lang_variable="language",nv_module_name="blog",nv_func_name="savefile",nv_is_user=0, nv_my_ofs=-4,nv_my_abbr="EDT",nv_cookie_prefix="nv4",nv_check_pass_mstime=1738000,nv_area_admin=0,nv_safemode=0,theme_responsive=1,nv_recaptcha_ver=2,nv_recaptcha_sitekey="",nv_recaptcha_type="image",XSSsanitize=1;</script>
<script src="https://tocdoviet.com/assets/js/language/vi.js"></script>
<script src="https://tocdoviet.com/assets/js/DOMPurify/purify3.js"></script>
<script src="https://tocdoviet.com/assets/js/global.js"></script>
<script src="https://tocdoviet.com/assets/js/site.js"></script>
<script src="https://tocdoviet.com/themes/default/js/news.js"></script>
<script src="https://tocdoviet.com/themes/default/js/main.js"></script>
<script src="https://tocdoviet.com/themes/default/js/custom.js"></script>
<script type="application/ld+json">
        {
            "@context": "https://schema.org",
            "@type": "Organization",
            "url": "https://tocdoviet.com",
            "logo": "https://tocdoviet.com/assets/images/logo.png"
        }
        </script>
<script src="https://tocdoviet.com/themes/default/js/bootstrap.min.js"></script>
</body>
</html>