Tôi đã đăng nhập mạng sau đây bằng chrome:
Tôi không hiểu một điều trong đó: sự khác biệt giữa thanh màu xám đầy và thanh màu xám trong suốt.
Tôi đã đăng nhập mạng sau đây bằng chrome:
Tôi không hiểu một điều trong đó: sự khác biệt giữa thanh màu xám đầy và thanh màu xám trong suốt.
Câu trả lời:
Google phân tích các trường này trong phần Đánh giá hiệu suất mạng trong tài liệu DevTools của họ.
Bị đình trệ / Chặn
Thời gian yêu cầu dành chờ đợi trước khi nó có thể được gửi. Thời gian này là bao gồm bất kỳ thời gian dành cho đàm phán proxy. Ngoài ra, thời gian này sẽ bao gồm khi trình duyệt đang chờ kết nối đã được thiết lập sẵn để sử dụng lại, tuân theo sáu kết nối TCP tối đa của Chrome cho mỗi quy tắc gốc.
(Nếu bạn quên, Chrome có liên kết "Giải thích" trong công cụ di chuột và trong bảng "Thời gian".)
Về cơ bản, lý do chính bạn sẽ thấy điều này là do Chrome sẽ chỉ tải xuống 6 tệp trên mỗi máy chủ tại một thời điểm và các yêu cầu khác sẽ bị đình trệ cho đến khi có khe cắm kết nối.
Đây không nhất thiết là thứ cần sửa, nhưng một cách để tránh trạng thái bị đình trệ là phân phối các tệp trên nhiều tên miền và / hoặc máy chủ, lưu ý CORS nếu có thể áp dụng cho nhu cầu của bạn, tuy nhiên HTTP2 có thể là một lựa chọn tốt hơn tiến về phía trước. Gói tài nguyên (như ghép nối JS và CSS) cũng có thể giúp giảm số lượng kết nối bị đình trệ.
file:///C:/...
DevTools: [mạng] giải thích các thanh trống có sẵn yêu cầu
Điều tra thêm và đã xác định rằng không có sự khác biệt đáng kể giữa phạm vi bị đình trệ và xếp hàng của chúng tôi. Cả hai đều được tính từ đồng bằng của các dấu thời gian khác, thay vì được cung cấp từ netstack hoặc renderer.
Hiện tại, nếu chúng tôi đang chờ một ổ cắm có sẵn:
- chúng tôi sẽ gọi nó bị đình trệ nếu một số cuộc đàm phán proxy xảy ra
- chúng tôi sẽ gọi nó là xếp hàng nếu không yêu cầu công việc proxy / ssl.
Điều này đến từ trang web chính thức của Chome-devtools và nó giúp. Ở đây tôi trích dẫn:
- Xếp hàng Nếu một yêu cầu được xếp hàng, nó chỉ ra rằng:
- Yêu cầu đã bị hoãn bởi công cụ kết xuất vì nó được coi là mức độ ưu tiên thấp hơn các tài nguyên quan trọng (như tập lệnh / kiểu). Điều này thường xảy ra với hình ảnh.
- Yêu cầu đã bị hoãn để chờ ổ cắm TCP không khả dụng sắp giải phóng.
- Yêu cầu đã bị hoãn vì trình duyệt chỉ cho phép sáu kết nối TCP trên mỗi nguồn gốc trên HTTP 1. Thời gian dành cho việc tạo các mục trong bộ đệm đĩa (thường rất nhanh.)
- Bị đình trệ / Chặn thời gian yêu cầu đã chờ đợi trước khi có thể được gửi. Nó có thể chờ đợi bất kỳ lý do nào được mô tả cho Xếp hàng. Ngoài ra, thời gian này bao gồm bất kỳ thời gian nào trong đàm phán proxy.
Trường hợp của tôi là trang đang gửi nhiều yêu cầu với các tham số khác nhau khi nó được mở. Vì vậy, hầu hết đang bị "đình trệ". Các yêu cầu sau đây được gửi ngay lập tức bị "đình trệ". Tránh các yêu cầu không cần thiết sẽ tốt hơn (lười biếng ...).
Vì nhiều người đến đây gỡ lỗi trang web chậm của họ, tôi muốn thông báo cho bạn về trường hợp của tôi mà không có giải thích nào của google giúp giải quyết. Thời gian bị đình trệ khổng lồ của tôi (đôi khi là 1 phút) là do Apache chạy trên Windows có quá ít luồng công nhân để xử lý các kết nối, do đó chúng bị xếp hàng.
Điều này có thể áp dụng cho bạn nếu nhật ký apache của bạn có ghi chú sau:
Server ran out of threads to serve requests. Consider raising the ThreadsPerChild setting
Vấn đề này được giải quyết trong Apache httpd.conf. Uncomment: Bao gồm conf / thêm / httpd-mpm.conf
Và chỉnh sửa httpd-mpm.conf
<IfModule mpm_winnt_module>
ThreadLimit 2000
ThreadsPerChild 2000
MaxConnectionsPerChild 0
</IfModule>
Lưu ý rằng bạn có thể không cần 2000 chủ đề, hoặc có thể cần nhiều hơn. 2000 là OK cho trường hợp của tôi.