2016-02-19 20 views
20

Theo this API doc, đó là nguồn gốc duy nhất tôi đã tìm thấy trong đó mô tả bộ nhớ cache trong bộ nhớ:Ai đó có thể giải thích bộ nhớ cache trong bộ nhớ cache của Google Chrome không?

Chrome sử dụng hai cache - một bộ nhớ cache trên đĩa và rất nhanh trong bộ nhớ Cache . Tuổi thọ của bộ nhớ đệm trong bộ nhớ được gắn vào vòng đời của quá trình kết xuất, tương đương với một tab. Yêu cầu rằng được trả lời từ bộ nhớ cache trong bộ nhớ là ẩn với yêu cầu web API. Nếu một trình xử lý yêu cầu thay đổi hành vi của nó (ví dụ, hành vi theo yêu cầu nào bị chặn), một trang đơn giản làm mới có thể không tôn trọng hành vi đã thay đổi này. Để đảm bảo thay đổi hành vi diễn ra, hãy gọi handlerBehaviorChanged() để xóa bộ nhớ cache trong bộ nhớ. Nhưng đừng làm điều đó thường xuyên; xả bộ đệm là một hoạt động rất tốn kém. Bạn không cần phải gọi số handlerBehaviorChanged() sau khi đăng ký hoặc hủy đăng ký sự kiện người nghe.

Tôi cần hiểu rõ hơn về bộ nhớ cache trong bộ nhớ. Cụ thể, tôi cần Chrome để tạo thác nước đầy đủ tài nguyên/webRequest mỗi khi tôi truy cập trang web, bao gồm cả làm mới trang. Rõ ràng, điều này không thể đúng nếu nó đang sử dụng bộ nhớ đệm trong bộ nhớ.

Bộ nhớ cache có phải là phương tiện chặn cho tab mới khi tôi tạo tab mới không?

"Hoạt động rất tốn kém" có ý nghĩa gì về số lượng?

Nếu tôi gọi bộ xử lýBehaviorChanged() mỗi khi một trang được tải lại trong cùng một tab, điều đó có đảm bảo một thác nước đầy đủ không? Trong trường hợp đó, giới hạn 20 lần trong 10 phút có vẻ khá thấp.

Bất kỳ trợ giúp nào được đánh giá cao, cảm ơn!

Trả lời

1

Trong trường hợp của bạn, tôi cho rằng sự cố của bạn là với bộ nhớ cache dài hạn thay vì bộ nhớ cache trong bộ nhớ. Trong thác tài nguyên, một số yêu cầu có thể được đánh dấu là đã lưu trong bộ nhớ cache. Có nhiều cách khác nhau để tránh điều đó nếu bạn muốn:

  • Thay vì tải lại bình thường (F5) nhấn CTRL + F5. Điều đó sẽ tải lại tất cả các tài nguyên, tôi thường nhấn CTRL + F5 nhiều lần mặc dù một thời gian phải là suficient.
  • Nếu bạn cần rằng trang của bạn tải lại một số tài nguyên cụ thể từ các máy chủ mỗi lần bất cứ người dùng ghé thăm bạn thì bạn có thể sử dụng một số kỹ thuật sau:

Hãy nhớ áp dụng các quy tắc này chỉ cho các tài nguyên mà bạn thực sự cần. Nếu không, máy chủ web của bạn sẽ bị quá tải với các yêu cầu không cần thiết.

Như đã nêu trong tài liệu được đề cập: bộ nhớ cache trong bộ nhớ không áp dụng cho các lần hiển thị trang khác nhau cho cùng một url và trong cùng một tab (bộ nhớ cache trong bộ nhớ được gắn liền với tuổi thọ của quá trình hiển thị), vì vậy tôi nghĩ rằng không áp dụng cho trường hợp của bạn. Chu kỳ hiển thị kết thúc mỗi khi trang được hiển thị và một trang khác bắt đầu nếu được hiển thị lại. Ví dụ: khi một hình ảnh được tải lần đầu tiên xuất hiện trong thác nước, nhưng không cho các yêu cầu sau này trên cùng một trang.

+0

[cần dẫn nguồn] cho khiếu nại đầu tiên – Xan

+1

Tôi đã tham chiếu đến cùng một tài liệu được đề cập trong câu hỏi – user1039663

+0

Xin lỗi, không nhận thấy điều đó. – Xan

Các vấn đề liên quan