{"id":16875,"date":"2022-01-10T23:04:00","date_gmt":"2022-01-10T16:04:00","guid":{"rendered":"https:\/\/kiencang.net\/?p=16095"},"modified":"2022-01-10T23:04:00","modified_gmt":"2022-01-10T16:04:00","slug":"http-caching-la-gi","status":"publish","type":"post","link":"https:\/\/kiencang.net\/http-caching-la-gi\/","title":{"rendered":"HTTP Caching l\u00e0 g\u00ec?"},"content":{"rendered":"\n

Khi ai \u0111\u00f3 gh\u00e9 th\u0103m website, th\u00ec m\u1ecdi th\u1ee9 m\u00e0 trang web c\u1ea7n d\u00f9ng \u0111\u1ec3 hi\u1ec3n th\u1ecb v\u00e0 ho\u1ea1t \u0111\u1ed9ng ph\u1ea3i l\u1ea5y t\u1eeb m\u1ed9t s\u1ed1 ngu\u1ed3n n\u00e0o \u0111\u1ea5y. T\u1ea5t c\u1ea3 v\u0103n b\u1ea3n, \u1ea3nh, style CSS, JavaScript, v\u00e0 c\u00e1c file \u0111a ph\u01b0\u01a1ng ti\u1ec7n ph\u1ea3i \u0111\u01b0\u1ee3c tr\u00ecnh duy\u1ec7t t\u1ea3i v\u1ec1 \u0111\u1ec3 hi\u1ec3n th\u1ecb ho\u1eb7c th\u1ef1c thi<\/a>. B\u1ea1n c\u00f3 th\u1ec3 th\u00f4ng b\u00e1o cho tr\u00ecnh duy\u1ec7t l\u1ef1a ch\u1ecdn n\u01a1i m\u00e0 n\u00f3 c\u00f3 th\u1ec3 l\u1ea5y t\u00e0i nguy\u00ean v\u1ec1, v\u00e0 \u0111i\u1ec1u \u1ea5y c\u00f3 th\u1ec3 t\u1ea1o ra s\u1ef1 kh\u00e1c bi\u1ec7t l\u1edbn trong t\u1ed1c \u0111\u1ed9 t\u1ea3i trang<\/strong> c\u1ee7a b\u1ea1n.<\/p>\n\n\n

Khi l\u1ea7n \u0111\u1ea7u ti\u00ean tr\u00ecnh duy\u1ec7t t\u1ea3i m\u1ed9t trang web, n\u00f3 l\u01b0u tr\u1eef c\u00e1c t\u00e0i nguy\u00ean c\u1ee7a trang trong HTTP Cache. V\u00e0o l\u1ea7n k\u1ebf ti\u1ebfp, khi tr\u00ecnh duy\u1ec7t t\u1ea3i trang \u0111\u00f3 v\u1ec1, n\u00f3 c\u00f3 th\u1ec3 t\u00ecm ki\u1ebfm trong cache c\u00e1c t\u00e0i nguy\u00ean m\u00e0 n\u00f3 \u0111\u00e3 t\u00ecm n\u1ea1p tr\u01b0\u1edbc \u0111\u00f3 (previously fetched), v\u00e0 nh\u1eadn d\u1eef li\u1ec7u t\u1eeb \u1ed5 c\u1ee9ng thi\u1ebft b\u1ecb c\u1ee7a ng\u01b0\u1eddi d\u00f9ng, \u0111i\u1ec1u n\u00e0y th\u01b0\u1eddng cho t\u1ed1c \u0111\u1ed9 nhanh h\u01a1n so v\u1edbi vi\u1ec7c ph\u1ea3i t\u1ea3i ch\u00fang v\u1ec1 qua m\u1ea1ng internet (networks).<\/p>\n\n\n

M\u1eb7c d\u00f9 HTTP caching \u0111\u00e3 \u0111\u01b0\u1ee3c chu\u1ea9n h\u00f3a theo th\u00f4ng s\u1ed1 k\u1ef9 thu\u1eadt c\u1ee7a IETF (Internet Engineerring Task Force)<\/a>, c\u00e1c tr\u00ecnh duy\u1ec7t c\u00f3 th\u1ec3 c\u00f3 nhi\u1ec1u b\u1ed9 nh\u1edb \u0111\u1ec7m cache kh\u00e1c nhau d\u1ef1a tr\u00ean c\u00e1ch n\u00f3 t\u00ecm n\u1ea1p, l\u01b0u tr\u1eef v\u00e0 gi\u1eef l\u1ea1i n\u1ed9i dung. B\u1ea1n c\u00f3 th\u1ec3 t\u00ecm hi\u1ec3u s\u1ef1 kh\u00e1c nhau gi\u1eefa c\u00e1c bi\u1ebfn th\u1ec3 cache n\u00e0y trong b\u00e0i vi\u1ebft r\u1ea5t ch\u1ea5t l\u01b0\u1ee3ng sau (ti\u1ebfng Anh): C\u00e2u chuy\u1ec7n v\u1ec1 b\u1ed1n b\u1ed9 nh\u1edb cache<\/a>.<\/p>\n\n\n

T\u1ea5t nhi\u00ean, m\u1ecdi l\u1ea7n gh\u00e9 th\u0103m \u0111\u1ea7u ti\u00ean \u0111\u1ebfn trang c\u1ee7a b\u1ea1n s\u1ebd ch\u1eb3ng c\u00f3 b\u1ea5t c\u1ee9 t\u00e0i nguy\u00ean n\u00e0o \u0111\u01b0\u1ee3c cache tr\u01b0\u1edbc \u0111\u00f3 c\u1ea3 (tr\u1eeb t\u00e0i nguy\u00ean c\u00f3 kh\u1ea3 n\u0103ng d\u00f9ng chung c\u1ee7a b\u00ean th\u1ee9 ba<\/a> \/ tuy nhi\u00ean v\u00ec l\u00fd do b\u1ea3o m\u1eadt, nhi\u1ec1u tr\u00ecnh duy\u1ec7t l\u1edbn \u0111\u00e3 b\u1ecf t\u00ednh n\u0103ng n\u00e0y<\/a>). Th\u1eadm ch\u00ed l\u01b0\u1ee3t gh\u00e9 th\u0103m l\u1eb7p l\u1ea1i c\u00f3 th\u1ec3 ch\u1eb3ng c\u00f3 nhi\u1ec1u t\u00e0i nguy\u00ean trong HTTP cache; h\u1ecd (ng\u01b0\u1eddi d\u00f9ng) c\u00f3 th\u1ec3 \u0111\u00e3 x\u00f3a n\u00f3 theo c\u00e1ch th\u1ee7 c\u00f4ng, ho\u1eb7c thi\u1ebft l\u1eadp tr\u00ecnh duy\u1ec7t th\u1ef1c hi\u1ec7n \u0111i\u1ec1u \u0111\u00f3 (x\u00f3a) t\u1ef1 \u0111\u1ed9ng, ho\u1eb7c ch\u1ee7 \u0111\u1ed9ng \u00e9p tr\u00ecnh duy\u1ec7t ph\u1ea3i t\u1ea3i trang t\u01b0\u01a1i m\u1edbi (fresh page load) v\u1edbi k\u1ebft h\u1ee3p control-key<\/em>. <\/p>\n\n\n

Tuy nhi\u00ean, v\u1eabn c\u00f3 m\u1ed9t s\u1ed1 l\u01b0\u1ee3ng \u0111\u00e1ng k\u1ec3 ng\u01b0\u1eddi d\u00f9ng c\u1ee7a b\u1ea1n c\u00f3 th\u1ec3 gh\u00e9 th\u0103m l\u1ea1i trang v\u1edbi \u00edt nhi\u1ec1u t\u00e0i nguy\u00ean \u0111\u00e3 \u0111\u01b0\u1ee3c cache s\u1eb5n r\u1ed3i, v\u00e0 \u0111i\u1ec1u \u0111\u00f3 c\u00f3 th\u1ec3 t\u1ea1o ra s\u1ef1 kh\u00e1c bi\u1ec7t l\u1edbn trong th\u1eddi gian t\u1ea3i trang (load time). <\/p>\n\n\n

T\u1ed1i \u0111a h\u00f3a vi\u1ec7c s\u1eed d\u1ee5ng cache l\u00e0 \u0111i\u1ec1u v\u00f4 c\u00f9ng quan tr\u1ecdng n\u1ebfu b\u1ea1n mu\u1ed1n t\u0103ng t\u1ed1c cho nh\u1eefng l\u01b0\u1ee3t truy c\u1eadp quay tr\u1edf l\u1ea1i website (return visit, kh\u00f4ng ch\u1ec9 ri\u00eang trang c\u1ee5 th\u1ec3 \u0111\u01b0\u1ee3c truy c\u1eadp tr\u01b0\u1edbc \u0111\u00f3, truy c\u1eadp tr\u00ean c\u00e1c trang kh\u00e1c tr\u00ean website m\u00e0 trang n\u00e0y c\u00f3 chung t\u00e0i nguy\u00ean v\u1edbi trang tr\u01b0\u1edbc \u0111\u00f3 \u0111\u1ec1u c\u00f3 kh\u1ea3 n\u0103ng gi\u00fap b\u1ea1n c\u1ea3i thi\u1ec7n t\u1ed1c \u0111\u1ed9 trang<\/a>).<\/p>\n\n\n


\n\n\n
\n
\n

M\u1ee5c l\u1ee5c<\/p>\n