Giải thích về thông báo liên quan đến đối tượng SharedArrayBuffer

Thứ Sáu, ngày 19 tháng 3 năm 2021

Một số bạn có thể đã nhận được một email của Google Search Console với tiêu đề "Yêu cầu mới đối với SharedArrayBuffers". Chúng tôi nhận được phản hồi rằng thông báo này khó hiểu. Vì vậy, chúng tôi muốn cung cấp thêm một số thông tin chi tiết về vấn đề này để bạn có thể quyết định các bước tiếp theo cho phù hợp. Chúng tôi cũng đã cập nhật hướng dẫn bật tính năng tách biệt nhiều nguồn gốc để bổ sung một số chi tiết.

Tại sao tôi nhận được thông báo này?

Bạn nhận được thông báo này vì chúng tôi phát hiện mã JavaScript trên trang web của bạn đang sử dụng đối tượng SharedArrayBuffer tại thời điểm thông báo. Việc sử dụng đối tượng này có thể là do khung, thư viện hoặc nội dung khác của bên thứ ba có trên trang web của bạn.

SharedArrayBuffer là gì?

SharedArrayBuffer là một đối tượng JavaScript dùng để chia sẻ một không gian bộ nhớ giữa các luồng trên trang web. Người ta từng phát hiện thấy lỗ hổng có tên là Spectre trên các trang web dùng đối tượng này. Tuy nhiên, vì Spectre là một lỗ hổng ở cấp độ CPU và ít có khả năng sửa được trong tương lai gần nên các trình duyệt đã quyết định tắt đối tượng SharedArrayBuffer.

Mặc dù Chrome đã bật lại đối tượng này trên máy tính nhờ tính năng Tách biệt trang web như một giải pháp tạm thời, nhưng tính năng tách biệt nhiều nguồn gốc mới là chuẩn để bật đối tượng SharedArrayBuffer một cách an toàn. Bắt đầu từ phiên bản 92 (dự kiến phát hành vào cuối tháng 5 năm 2021), Chrome sẽ kiểm soát đối tượng SharedArrayBuffer bằng tính năng tách biệt nhiều nguồn gốc. Firefox cũng đã cho phép đối tượng SharedArrayBuffer hoạt động trên một môi trường tách biệt nhiều nguồn gốc trong phiên bản 76. Chúng tôi hy vọng các trình duyệt khác sẽ sớm làm theo.

Cách xác định vị trí sử dụng đối tượng SharedArrayBuffer trên trang web của bạn

Bạn có hai lựa chọn:

  1. Dùng Công cụ của Chrome cho nhà phát triển và kiểm tra các trang quan trọng.
  2. (Nâng cao) Dùng API Báo cáo để gửi báo cáo về việc ngừng sử dụng đến một điểm cuối báo cáo.

Hãy tìm hiểu cách thực hiện những phương pháp trên tại mục Xác định nơi sử dụng đối tượng SharedArrayBuffer trên trang web.

Các bước tiếp theo

Trong các bước tiếp theo, bạn nên:

  1. Xác định vị trí sử dụng đối tượng SharedArrayBuffer trên trang web của bạn.
  2. Quyết định xem việc sử dụng này có cần thiết hay không.
  3. Khắc phục vấn đề bằng cách xóa chức năng này hoặc bật tính năng tách biệt nhiều nguồn gốc.

Nếu bạn chưa nghe nói về đối tượng SharedArrayBuffer và nhận được thông báo của Search Console về đối tượng này thì rất có thể một tài nguyên bên thứ ba trên trang web của bạn đang sử dụng đối tượng này. Sau khi xác định được trang nào bị ảnh hưởng và ai là chủ sở hữu của tài nguyên liên quan, hãy liên hệ với nhà cung cấp tài nguyên đó và yêu cầu họ khắc phục vấn đề.

Sau bản phát hành Chrome 92, đối tượng SharedArrayBuffer sẽ không hoạt động được nữa nếu không có tính năng tách biệt nhiều nguồn gốc. Trên thực tế, điều này có nghĩa là người dùng Chrome trên trang web của bạn có thể nhận thấy hiệu suất giảm, tương tự như trong những tình huống khác mà đối tượng SharedArrayBuffer không được hỗ trợ.

Chúng tôi hy vọng thông tin giải thích này có ích cho bạn, ngay cả khi bạn không nhận được thông báo nêu trên. Nếu có thắc mắc, bạn nên đăng trên cộng đồng trợ giúp của Trung tâm Tìm kiếm để nhận được ý kiến của các chuyên gia khác.