{"id":15292,"date":"2020-03-17T20:58:44","date_gmt":"2020-03-17T13:58:44","guid":{"rendered":"https:\/\/kiencang.net\/?p=15292"},"modified":"2020-03-17T20:58:44","modified_gmt":"2020-03-17T13:58:44","slug":"toi-thieu-cong-viec-luong-chinh","status":"publish","type":"post","link":"https:\/\/kiencang.net\/toi-thieu-cong-viec-luong-chinh\/","title":{"rendered":"T\u1ed1i thi\u1ec3u c\u00f4ng vi\u1ec7c c\u1ee7a lu\u1ed3ng ch\u00ednh"},"content":{"rendered":"\n

Qu\u00e1 tr\u00ecnh k\u1ebft xu\u1ea5t c\u1ee7a tr\u00ecnh duy\u1ec7t<\/a> s\u1ebd chuy\u1ec3n m\u00e3 c\u1ee7a b\u1ea1n th\u00e0nh trang web m\u00e0 ng\u01b0\u1eddi d\u00f9ng s\u1ebd t\u01b0\u01a1ng t\u00e1c (interact). Theo m\u1eb7c \u0111\u1ecbnh, qu\u00e1 tr\u00ecnh k\u1ebft xu\u1ea5t c\u1ee7a lu\u1ed3ng ch\u00ednh (main thread) th\u01b0\u1eddng x\u1eed l\u00fd ph\u1ea7n l\u1edbn m\u00e3: n\u00f3 ph\u00e2n t\u00edch c\u00fa ph\u00e1p HTML v\u00e0 x\u00e2y d\u1ef1ng DOM<\/a>, ph\u00e2n t\u00edch c\u00fa ph\u00e1p CSS v\u00e0 \u00e1p d\u1ee5ng c\u00e1c style c\u1ee5 th\u1ec3, v\u00e0 ph\u00e2n t\u00edch c\u00fa ph\u00e1p (parse), \u0111\u00e1nh gi\u00e1 (evaluate) c\u0169ng nh\u01b0 th\u1ef1c thi (excute) JavaScript.<\/p>\n\n\n

Lu\u1ed3ng ch\u00ednh c\u0169ng x\u1eed l\u00fd c\u00e1c s\u1ef1 ki\u1ec7n ng\u01b0\u1eddi d\u00f9ng (user events). V\u00ec th\u1ebf, b\u1ea5t c\u1ee9 khi n\u00e0o lu\u1ed3ng ch\u00ednh b\u1eadn r\u1ed9n l\u00e0m \u0111i\u1ec1u g\u00ec \u0111\u00f3, trang web c\u1ee7a b\u1ea1n c\u00f3 th\u1ec3 kh\u00f4ng ph\u1ea3n h\u1ed3i t\u01b0\u01a1ng t\u00e1c c\u1ee7a ng\u01b0\u1eddi d\u00f9ng<\/a>, \u0111i\u1ec1u n\u00e0y d\u1eabn \u0111\u1ebfn tr\u1ea3i nghi\u1ec7m ng\u01b0\u1eddi d\u00f9ng t\u1ec7 h\u1ea1i.<\/p>\n\n\n


\n\n\n

C\u00e1ch Lighthouse ki\u1ec3m tra c\u00f4ng vi\u1ec7c lu\u1ed3ng ch\u00ednh c\u00f3 v\u1ea5n \u0111\u1ec1<\/h2>\n\n\n

Lighthouse b\u1eadt c\u1edd c\u1ea3nh b\u00e1o v\u1edbi c\u00e1c trang m\u00e0 c\u00f3 lu\u1ed3ng ch\u00ednh b\u1eadn r\u1ed9n d\u00e0i h\u01a1n 4 gi\u00e2y trong qu\u00e1 tr\u00ecnh t\u1ea3i:<\/p>\n\n\n

\"c\u00f4ng<\/figure><\/div>\n\n\n

\u0110\u1ec3 gi\u00fap b\u1ea1n x\u00e1c \u0111\u1ecbnh c\u00e1c ngu\u1ed3n t\u1ea3i c\u1ee7a lu\u1ed3ng ch\u00ednh, Lighthouse hi\u1ec3n th\u1ecb th\u1eddi gian CPU ph\u1ea3i d\u00f9ng m\u1ed9t c\u00e1ch ri\u00eang r\u1ebd khi tr\u00ecnh duy\u1ec7t t\u1ea3i trang c\u1ee7a b\u1ea1n.<\/p>\n\n\n


\n\n\n

C\u00e1ch gi\u1ea3m t\u1ea3i cho c\u00f4ng vi\u1ec7c c\u1ee7a lu\u1ed3ng ch\u00ednh<\/h2>\n\n\n

Nhi\u1ec1u ho\u1ea1t \u0111\u1ed9ng, ch\u1eb3ng h\u1ea1n nh\u01b0 ph\u00e2n t\u00edch c\u00fa ph\u00e1p CSS v\u00e0 l\u00ean layout trang c\u00f3 th\u1ec3 l\u00e0m cho lu\u1ed3ng ch\u00ednh b\u1eadn r\u1ed9n. D\u00f9 v\u1eady, ph\u00e2n t\u00edch c\u00fa ph\u00e1p, bi\u00ean d\u1ecbch, v\u00e0 th\u1ef1c thi JavaScript m\u1edbi th\u01b0\u1eddng l\u00e0 g\u00e1nh n\u1eb7ng l\u1edbn nh\u1ea5t tr\u00ean lu\u1ed3ng ch\u00ednh<\/a>.<\/p>\n\n\n

B\u1ea1n n\u00ean c\u00e2n nh\u1eafc c\u00e1c chi\u1ebfn thu\u1eadt sau \u0111\u1ec3 c\u1ea3i thi\u1ec7n hi\u1ec7u su\u1ea5t, t\u1ed1c \u0111\u1ed9 JavaScript trong su\u1ed1t qu\u00e1 tr\u00ecnh t\u1ea3i trang:<\/p>\n\n\n