Hiệu suất JavaScript của bên thứ ba

Tìm hiểu xem JavaScript của bên thứ ba có thể ảnh hưởng đến hiệu suất như thế nào và bạn có thể làm gì để ngăn JavaScript làm chậm trang web của bạn.

JavaScript bên thứ ba thường là các tập lệnh được nhúng trong trang web của bạn mà:

  • Không phải do bạn viết
  • Được phân phát từ máy chủ của bên thứ ba

Các trang web sử dụng những tập lệnh này cho nhiều mục đích, bao gồm:

  • Nút chia sẻ qua mạng xã hội
  • Nhúng trình phát video
  • Dịch vụ trò chuyện
  • iframe quảng cáo
  • Số liệu phân tích và tập lệnh chỉ số
  • Tập lệnh thử nghiệm A/B cho thử nghiệm
  • Các thư viện trợ giúp (như định dạng ngày, ảnh động và thư viện chức năng)

Tập lệnh của bên thứ ba có thể cung cấp chức năng mạnh mẽ, nhưng đó chưa phải là toàn bộ. Chúng cũng ảnh hưởng đến quyền riêng tư, tính bảo mật cũng như hành vi của trang⁠ và chúng có thể đặc biệt ảnh hưởng đến hiệu suất.

Hiệu suất

Bất kỳ lượng JavaScript nào đáng kể đều có thể làm chậm hiệu suất. Nhưng do JavaScript bên thứ ba thường nằm ngoài tầm kiểm soát của bạn, nên JavaScript có thể gây ra thêm vấn đề.

Mạng

Việc thiết lập kết nối mất nhiều thời gian, và việc gửi quá nhiều yêu cầu đến nhiều máy chủ sẽ làm chậm tốc độ. Thời gian đó thậm chí còn lâu hơn đối với các kết nối bảo mật, có thể liên quan đến hoạt động tra cứu DNS, chuyển hướng và thực hiện nhiều lượt khứ hồi đến máy chủ cuối cùng để xử lý yêu cầu của người dùng.

Các tập lệnh của bên thứ ba thường làm tăng mức hao tổn mạng do:

  • Kích hoạt thêm yêu cầu mạng
  • Lấy hình ảnh và video chưa được tối ưu hoá
  • Lưu vào bộ nhớ đệm HTTP không đủ, tình trạng này buộc tìm nạp tài nguyên mạng thường xuyên
  • Không đủ nén máy chủ của tài nguyên
  • Nhiều phiên bản khung và thư viện được lấy từ các nội dung nhúng của bên thứ ba

Kết xuất

Cách thức tải JavaScript của bên thứ ba rất quan trọng. Nếu việc này được thực hiện đồng bộ trên đường dẫn hiển thị quan trọng, thì việc này sẽ trì hoãn việc phân tích cú pháp phần còn lại của tài liệu.

Nếu bên thứ ba gặp sự cố máy chủ và không phân phối được tài nguyên, thì quá trình kết xuất sẽ bị chặn cho đến khi hết thời gian yêu cầu (có thể kéo dài từ 10 đến 80 giây). Bạn có thể kiểm tra và mô phỏng vấn đề này bằng quy trình kiểm tra một điểm không thành công của WebPageTest.

Việc nên làm

Việc sử dụng JavaScript của bên thứ ba thường không thể tránh khỏi, nhưng có những việc bạn có thể làm để giảm thiểu tác động bất lợi:

  • Khi chọn tài nguyên của bên thứ ba, hãy ưu tiên những tài nguyên gửi ít mã nhất trong khi vẫn cung cấp cho bạn chức năng mà bạn cần.
  • Sử dụng ngân sách hiệu suất cho nội dung của bên thứ ba để kiểm soát chi phí của họ.
  • Không sử dụng cùng một chức năng của hai nhà cung cấp khác nhau. Bạn có thể không cần 2 trình quản lý thẻ hoặc 2 nền tảng phân tích.
  • Thường xuyên kiểm tra và xoá các tập lệnh thừa của bên thứ ba.

Để tìm hiểu cách kiểm tra nội dung của bên thứ ba và tải nội dung một cách hiệu quả nhằm cải thiện hiệu suất và trải nghiệm người dùng, hãy xem các bài đăng khác trong phần Tối ưu hoá tài nguyên bên thứ ba của bạn.