{"id":18946,"date":"2021-01-31T03:37:07","date_gmt":"2021-01-30T20:37:07","guid":{"rendered":"https:\/\/speed.family\/?p=18946"},"modified":"2021-01-31T03:37:07","modified_gmt":"2021-01-30T20:37:07","slug":"optimus-cache-prime","status":"publish","type":"post","link":"https:\/\/kiencang.net\/optimus-cache-prime\/","title":{"rendered":"T\u1ea1o tr\u01b0\u1edbc cache cho website c\u1ee7a b\u1ea1n v\u1edbi c\u00f4ng c\u1ee5 Optimus Cache Prime (OCP)"},"content":{"rendered":"\n
C\u00e1ch t\u1ea1o tr\u01b0\u1edbc cache cho c\u00e1c trang tr\u00ean website c\u1ee7a b\u1ea1n b\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng t\u1eadp l\u1ec7nh nh\u1ecf ti\u1ec7n d\u1ee5ng n\u00e0y.<\/strong><\/p>\n\n\n Ch\u00fa th\u00edch c\u1ee7a Ki\u1ebfn c\u00e0ng<\/strong>: th\u00f4ng th\u01b0\u1eddng cache c\u1ee7a trang s\u1ebd kh\u00f4ng \u0111\u01b0\u1ee3c t\u1ea1o tr\u01b0\u1edbc, ng\u01b0\u1eddi \u0111\u1ea7u ti\u00ean truy c\u1eadp v\u00e0o s\u1ebd k\u00edch ho\u1ea1t vi\u1ec7c t\u1ea1o cache, t\u1ee9c l\u00e0 l\u01b0\u1ee3t \u0111\u1ea7u ti\u00ean n\u00e0y trang v\u1eabn “\u0111\u1ed9ng” ch\u1ee9 ch\u01b0a “t\u0129nh”. T\u1eeb l\u01b0\u1ee3t truy c\u1eadp th\u1ee9 hai tr\u1edf \u0111i cache m\u1edbi c\u00f3 s\u1eb5n \u0111\u00f3 r\u1ed3i v\u00e0 c\u00f3 t\u1ed1c \u0111\u1ed9 truy c\u1eadp cao. C\u00f3 nhi\u1ec1u l\u00fd do \u0111\u1ec3 ng\u01b0\u1eddi ta kh\u00f4ng mu\u1ed1n t\u1ea1o tr\u01b0\u1edbc cache, trong \u0111\u00f3 ch\u1ee7 y\u1ebfu l\u00e0 v\u00ec mu\u1ed1n h\u1ea1n ch\u1ebf \u1ea3nh h\u01b0\u1edfng \u0111\u1ebfn t\u00e0i nguy\u00ean hosting g\u00e2y qu\u00e1 t\u1ea3i. V\u00ed d\u1ee5 r\u1ea5t nhi\u1ec1u c\u00f4ng ty hosting ch\u1ee7 \u0111\u1ed9ng ch\u1eb7n t\u00ednh n\u0103ng t\u1ea1o tr\u01b0\u1edbc cache n\u00e0y. Thu\u1eadt ng\u1eef ti\u1ebfng Anh c\u1ee7a t\u1eeb: t\u1ea1o tr\u01b0\u1edbc cache c\u00f3 m\u1ea5y t\u1eeb g\u1ed3m: cache-warming, preload cache, prebuild cache ho\u1eb7c ng\u1eafn g\u1ecdn l\u00e0 pre-cache.<\/p>\n\n\n C\u00f4ng c\u1ee5 OCP r\u1ea5t t\u1ed1t trong m\u1ecdi tr\u01b0\u1eddng h\u1ee3p m\u00e0 b\u1ea1n c\u1ea7n t\u1ea1o t\u1ef1 \u0111\u1ed9ng tr\u01b0\u1edbc cache:<\/p>\n\n\n Y\u00eau c\u1ea7u duy nh\u1ea5t l\u00e0 b\u1ea1n ph\u1ea3i c\u00f3 quy\u1ec1n truy c\u1eadp m\u00e1y ch\u1ee7 (\u0111\u1ec3 ch\u1ea1y l\u1ec7nh SSH<\/a>) ho\u1eb7c cron job v\u00e0 trang web c\u1ee7a b\u1ea1n c\u00f3 sitemap XML.<\/p>\n\n\n Tr\u01b0\u1edbc khi b\u1eaft \u0111\u1ea7u, ch\u00fang ta h\u00e3y g\u1eedi l\u1eddi c\u1ea3m \u01a1n \u0111\u1eb7c bi\u1ec7t \u0111\u1ebfn Patrick v\u00ec anh \u0111\u00e3 vi\u1ebft k\u1ecbch b\u1ea3n tuy\u1ec7t v\u1eddi n\u00e0y t\u1eeb nhi\u1ec1u n\u0103m tr\u01b0\u1edbc. T\u00f4i c\u0169ng g\u1eedi l\u1eddi c\u1ea3m \u01a1n \u0111\u1eb7c bi\u1ec7t \u0111\u1ebfn Fabio Tielen t\u1eeb trang codeagency.be<\/a> v\u00ec \u0111\u00e3 tr\u1ea3 l\u1eddi nhi\u1ec1u c\u00e2u h\u1ecfi m\u00e0 ng\u01b0\u1eddi m\u1edbi (n00b) nh\u01b0 t\u00f4i hay th\u1eafc m\u1eafc.<\/p>\n\n\n V\u1ec1 c\u01a1 b\u1ea3n OCP thu th\u1eadp th\u00f4ng tin t\u1ea5t c\u1ea3 c\u00e1c trang trong sitemap XML c\u1ee7a b\u1ea1n \u0111\u1ec3 t\u1ea1o tr\u01b0\u1edbc trang cache cho website. \u0110i\u1ec1u n\u00e0y gi\u00fap tr\u00e1nh hi\u1ec7u \u1ee9ng \u201cuncache hit\u201d ch\u1eadm tr\u1ec5 tr\u00ean c\u00e1c trang web kh\u00f4ng c\u00f3 ch\u1ee9c n\u0103ng t\u1ea1o tr\u01b0\u1edbc cache ho\u1eb7c c\u00e1c trang c\u00f3 qu\u00e1 nhi\u1ec1u trang \u0111\u1ec3 c\u00f3 th\u1ec3 t\u1ea1o tr\u01b0\u1edbc \u0111\u1ee7 nhanh.<\/p>\n\n\n C\u00e0i \u0111\u1eb7t v\u00e0 ki\u1ec3m tra OCP:<\/strong><\/p>\n\n\n T\u00f4i \u0111ang s\u1eed d\u1ee5ng CentOS 7, WHM \/ cPanel. Fabio th\u00ec d\u00f9ng Ubuntu v\u00e0 s\u1eed d\u1ee5ng m\u1ed9t l\u1ec7nh g\u00ec \u0111\u00f3 t\u01b0\u01a1ng t\u1ef1 th\u1ebf n\u00e0y: FYI (b\u1ea1n ch\u00fa \u00fd): c\u00e1c l\u1ec7nh tr\u00ean ch\u1ec9 c\u00f3 th\u1ec3 th\u1ef1c hi\u1ec7n \u0111\u01b0\u1ee3c \u0111\u1ed1i v\u1edbi nh\u1eefng ng\u01b0\u1eddi c\u00f3 quy\u1ec1n truy c\u1eadp SSH v\u00e0o m\u00e1y ch\u1ee7. N\u1ebfu b\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n truy c\u1eadp SSH, b\u1ea1n v\u1eabn c\u00f3 th\u1ec3 s\u1eed d\u1ee5ng t\u1eadp l\u1ec7nh n\u00e0y nh\u01b0 m\u1ed9t d\u1ea1ng cron job.<\/p>\n\n\n Ch\u1ea1y OCP d\u01b0\u1edbi d\u1ea1ng cron job:<\/strong><\/p>\n\n\n Ch\u1eafc ch\u1eafn, b\u1ea1n c\u00f3 th\u1ec3 ch\u1ec9 c\u1ea7n l\u1ec7nh cron \u1edf tr\u00ean nh\u01b0ng n\u00f3 kh\u00f4ng \u0111\u01b0\u1ee3c khuy\u1ebfn kh\u00edch cho c\u00e1c trang web l\u1edbn kh\u00f4ng ho\u00e0n th\u00e0nh t\u1ea1o tr\u01b0\u1edbc cache tr\u01b0\u1edbc cron interval k\u1ebf ti\u1ebfp. T\u00f4i th\u00edch ki\u1ec3m tra 5 ho\u1eb7c 10 ph\u00fat m\u1ed9t l\u1ea7n nh\u01b0ng m\u1ed9t s\u1ed1 trang web c\u00f3 th\u1ec3 m\u1ea5t m\u1ed9t gi\u1edd ho\u1eb7c h\u01a1n \u0111\u1ec3 t\u1ea1o tr\u01b0\u1edbc cache, \u0111i\u1ec1u \u0111\u00f3 c\u00f3 ngh\u0129a l\u00e0 b\u1ea1n c\u00f3 nguy c\u01a1 nhi\u1ec1u c\u00f4ng vi\u1ec7c cron \u0111\u00e1nh c\u00f9ng m\u1ed9t t\u1eadp l\u1ec7nh.<\/p>\n\n\n V\u00ec v\u1eady, \u0111\u1ec3 gi\u1ea3i quy\u1ebft v\u1ea5n \u0111\u1ec1 n\u00e0y, ch\u00fang t\u00f4i s\u1eed d\u1ee5ng one.sh<\/a> (m\u1ed9t t\u1eadp l\u1ec7nh nh\u1ecf g\u1ecdn g\u00e0ng kh\u00e1c c\u0169ng c\u1ee7a Patrick). N\u00f3 s\u1ebd ch\u1ea1y c\u00e1c l\u1ec7nh nh\u01b0ng tr\u01b0\u1edbc ti\u00ean s\u1ebd ki\u1ec3m tra \u0111\u1ec3 \u0111\u1ea3m b\u1ea3o r\u1eb1ng l\u1ec7nh t\u01b0\u01a1ng t\u1ef1 ch\u01b0a ch\u1ea1y tr\u01b0\u1edbc \u0111\u00f3\u2026 \u0111i\u1ec1u n\u00e0y l\u00fd t\u01b0\u1edfng \u0111\u1ec3 k\u00edch ho\u1ea1t ch\u1ea1y cron th\u01b0\u1eddng xuy\u00ean m\u00e0 kh\u00f4ng c\u00f3 nguy c\u01a1 th\u1ef1c thi nhi\u1ec1u l\u1ea7n. N\u00f3 r\u1ea5t ti\u1ec7n d\u1ee5ng kh\u00f4ng ch\u1ec9 cho OCP m\u00e0 c\u00f2n c\u1ea3 c\u00e1c t\u1eadp l\u1ec7nh kh\u00e1c.<\/p>\n\n\n C\u00e1c m\u1eb9o kh\u00e1c:<\/strong><\/p>\n\n\n (ph\u1ea7n n\u00e0y l\u00e0 ch\u00fa th\u00edch th\u00eam c\u1ee7a Ki\u1ebfn c\u00e0ng)<\/p>\n\n\n T\u00f4i \u0111\u1ec3 th\u01b0 m\u1ee5c OCP \u0111\u00e3 gi\u1ea3i n\u00e9n c\u00f9ng c\u1ea5p v\u1edbi th\u01b0 m\u1ee5c public_html<\/strong>.<\/p>\n\n\n Ti\u1ebfp \u0111\u1ebfn t\u00f4i g\u00f5 l\u1ec7nh sau \u0111\u1ec3 v\u00e0o th\u01b0 m\u1ee5c OCP sau khi \u0111\u0103ng nh\u1eadp v\u00e0o t\u00e0i kho\u1ea3n root:<\/p>\n\n\n Sau \u0111\u00f3 t\u00f4i g\u00f5 l\u1ec7nh sau \u0111\u1ec3 OCP qu\u00e9t trang:<\/p>\n\n\n PS: sitemap_index.xml l\u00e0 \u0111\u1ecbnh d\u1ea1ng sitemap do Yoast SEO t\u1ea1o.<\/p>\n\n\n \u0110\u1ea7u ti\u00ean b\u1ea1n xo\u00e1 h\u1ebft cache trang. L\u00fac n\u00e0y v\u00ec trang c\u1ee7a b\u1ea1n ch\u01b0a preload cache n\u00ean b\u1ea5t c\u1ee9 ai v\u00e0o, n\u00f3 s\u1ebd ph\u1ea3i t\u1ea1o l\u1ea1i cache l\u00e0m cho ng\u01b0\u1eddi truy c\u1eadp \u0111\u1ea7u ti\u00ean ch\u1eadm h\u01a1n. Sau khi b\u1ea1n ch\u1ea1y xong OCP, b\u1ea1n m\u1edf m\u00e3 ngu\u1ed3n v\u00e0i b\u00e0i \u0111\u0103ng b\u1ea5t k\u1ef3 m\u00e0 OCP \u0111\u00e3 qu\u00e9t (t\u1ed1t nh\u1ea5t l\u00e0 b\u00e0i n\u00e0o \u0111\u00f3 \u0111\u00e3 vi\u1ebft t\u1eeb l\u00e2u & \u00edt ng\u01b0\u1eddi truy c\u1eadp). N\u1ebfu b\u1ea1n th\u1ea5y n\u00f3 t\u1ea1o \u0111\u01b0\u1ee3c cache tr\u01b0\u1edbc th\u1eddi \u0111i\u1ec3m OCP qu\u00e9t xong ngh\u0129a l\u00e0 b\u1ea1n \u0111\u00e3 l\u00e0m ch\u00ednh x\u00e1c.<\/p>\n\n\n (Bi\u00ean t\u1eadp t\u1eeb b\u00e0i vi\u1ebft Cache warming with Optimus Cache Prime (OCP) c\u1ee7a Johnny Nguyen)<\/em><\/p>\n","protected":false},"excerpt":{"rendered":" C\u00e1ch t\u1ea1o tr\u01b0\u1edbc cache cho c\u00e1c trang tr\u00ean website c\u1ee7a b\u1ea1n b\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng t\u1eadp l\u1ec7nh nh\u1ecf ti\u1ec7n d\u1ee5ng n\u00e0y. Ch\u00fa th\u00edch c\u1ee7a Ki\u1ebfn c\u00e0ng: th\u00f4ng th\u01b0\u1eddng cache c\u1ee7a trang s\u1ebd kh\u00f4ng \u0111\u01b0\u1ee3c t\u1ea1o tr\u01b0\u1edbc, ng\u01b0\u1eddi \u0111\u1ea7u ti\u00ean truy c\u1eadp v\u00e0o s\u1ebd k\u00edch ho\u1ea1t vi\u1ec7c t\u1ea1o cache, t\u1ee9c l\u00e0 l\u01b0\u1ee3t \u0111\u1ea7u ti\u00ean n\u00e0y trang …<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[249],"tags":[],"yoast_head":"\n
\n\n\nOptimus Cache Prime (\u0111\u01b0\u1ee3c vi\u1ebft b\u1edfi t\u00e1c gi\u1ea3 Patrick Mylund Nielson)<\/h2>\n\n\n
\/path\/to\/ocp -v https:\/\/yoursite.com\/sitemap.xml<\/strong><\/code> v\u00e0 xem \u0111\u1ea7u ra c\u00f3 ch\u00ednh x\u00e1c kh\u00f4ng;<\/li>
\/path\/to\/ocp https:\/\/yoursite.com\/sitemap.xml<\/strong><\/code><\/li>
tail -f \/var\/log\/cron<\/strong><\/code> xem n\u00f3 c\u00f3 ch\u1ea1y kh\u00f4ng.<\/li><\/ul>\n\n\n
cd \/var\/www\/ocp\/; .\/ocp -v=true https:\/\/yoursite.com\/sitemap.xml<\/strong><\/code> nh\u01b0ng t\u00f4i th\u1ea5y \u0111i\u1ec1u n\u00e0y kh\u00f4ng nh\u1ea5t thi\u1ebft ph\u1ea3i th\u1ef1c hi\u1ec7n theo c\u00e1ch \u0111\u00f3. PS c\u1ee7a ng\u01b0\u1eddi d\u1ecbch: webserver c\u1ee7a t\u00f4i c\u0169ng c\u00e0i tr\u00ean Ubuntu n\u00ean c\u00e2u l\u1ec7nh c\u1ee7a Fibio m\u1edbi ch\u1ea1y \u0111\u01b0\u1ee3c.<\/p>\n\n\n
\/path\/to\/one.sh \/path\/to\/ocp https:\/\/yoursite.com\/sitemap.xml<\/strong><\/code><\/li><\/ul>\n\n\n
ocp -c 5 https:\/\/yoursite.com\/sitemap.xml<\/strong><\/code> c\u00f3 ngh\u0129a l\u00e0 5 trang c\u00f9ng m\u1ed9t l\u00fac;<\/li>
\n\n\nC\u00e2u l\u1ec7nh ti\u1ec7n d\u00f9ng<\/h2>\n\n\n
cd \/home\/ten-mien-cua-ban.com\/ocp<\/code><\/pre>\n\n\n
.\/ocp -v=true -c 10 https:\/\/ten-mien-cua-ban.com\/sitemap_index.xml<\/code><\/pre>\n\n\n
\n\n\nC\u00e1ch ki\u1ec3m tra xem b\u1ea1n \u0111\u00e3 l\u00e0m \u0111\u01b0\u1ee3c hay ch\u01b0a?<\/h2>\n\n\n