Tôi hiện đang phải đối mặt với tải trang chậm với thanh toán là chậm nhất trong tất cả với :
- 28 yêu cầu
- Đã chuyển 18,5 KB (phần còn lại được lưu trong bộ nhớ cache từ đĩa hoặc bộ nhớ)
- Kết thúc: 15,24 giây (trình tải biến mất và người dùng có thể làm gì đó)
- DOMContentLoaded: 6.45s
- Tải: 10.28s
Đang tải thanh toán / giỏ hàng kết thúc bằng:
- 29 yêu cầu
- Đã chuyển 28,5 KB (phần còn lại được lưu trong bộ nhớ cache từ đĩa hoặc bộ nhớ)
- Kết thúc: 6,35s
- DOMContentLoaded: 1.9s
- Tải: 3,79
Trong khi một giỏ hàng trống có cái này:
- 22 yêu cầu
- Đã chuyển 8.2 KB (phần còn lại được lưu trong bộ nhớ cache từ đĩa hoặc bộ nhớ)
- Kết thúc: 2,78
- DOMContentLoaded: 1.22s
- Tải: 2,65s
Tôi đang sử dụng redis cho bộ nhớ đệm và tất cả các bộ nhớ cache đang hoạt động. Javascript được thu nhỏ, hợp nhất và đóng gói cũng như css và html. Máy chủ có vị trí khá tốt với 8 CPU, RAM 16 GB và ổ SSD. Tải vv không bao giờ đủ cao để thậm chí được đề cập. Về cơ bản, máy chủ đang ngủ ...
Chỉ có ~ 80 sản phẩm và một cửa hàng. Chúng tôi không sử dụng phần nội dung của Magento. Chỉ các trang chi tiết sản phẩm, thanh toán và khu vực khách hàng (cũng như phụ trợ) được Magento phục vụ. Có một hệ thống CMS "ở phía trước" của Magento, phục vụ các trang với tổng số ít hơn một giây bao gồm cả phương tiện truyền thông.
Tôi thấy rằng TTFB cho tài liệu thanh toán đã là 5,66 giây. Với trình tạo hồ sơ Magento được bật, tôi có thể tìm thấy magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body
nguyên nhân phần lớn thời gian đó. Mặc dù nó không rõ ràng chính xác những gì gây ra nó. Ở đây trình hồ sơ không thể giúp nhiều (ít nhất là tôi).
magento->routers_match 5.347600 5.347600 1 42,063,304 10,485,760
magento->routers_match->CONTROLLER_ACTION:checkout_index_index 5.143997 5.143997 1 15,976,176 10,485,760
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body 5.143980 5.143980 1 15,975,304 10,485,760
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->EVENT:checkout_allow_guest 0.000609 0.000609 1 82.464 0
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->EVENT:checkout_allow_guest->OBSERVER:checkout_allow_guest 0.000592 0.000592 1 80.944 0
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->LAYOUT 0.106220 0.035407 3 13,085,544 10,485,760
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->LAYOUT->layout_load 0.000666 0.000666 1 136.56 0
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->LAYOUT->layout_generate_xml 0.005658 0.005658 1 174.632 0
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->LAYOUT->layout_generate_blocks 0.099472 0.099472 1 12,755,648 10,485,760
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->LAYOUT->layout_generate_blocks->Magento\Framework\View\Layout::Magento\Framework\View\Layout::generateElements 0.099462 0.099462 1 12,902,296 10,485,760
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->LAYOUT->layout_generate_blocks->Magento\Framework\View\Layout::Magento\Framework\View\Layout::generateElements->generate_elements 0.091426 0.091426 1 11,885,184 10,485,760
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->LAYOUT->layout_generate_blocks->Magento\Framework\View\Layout::Magento\Framework\View\Layout::generateElements->generate_elements->EVENT:core_layout_block_create_after 0.000169 0.000003 51 -16.128 0
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->LAYOUT->layout_generate_blocks->Magento\Framework\View\Layout::Magento\Framework\View\Layout::generateElements->generate_elements->Magento\Framework\View\Layout::Magento\Framework\View\Layout::generateElements 0.000609 0.000609 1 52.76 0
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->LAYOUT->layout_generate_blocks->Magento\Framework\View\Layout::Magento\Framework\View\Layout::generateElements->generate_elements->Magento\Framework\View\Layout::Magento\Framework\View\Layout::generateElements->generate_elements 0.000455 0.000455 1 26.952 0
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->LAYOUT->EVENT:layout_generate_blocks_after 0.000297 0.000297 1 16.32 0
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->LAYOUT->EVENT:layout_generate_blocks_after->OBSERVER:persistent 0.000279 0.000279 1 14.776 0
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->postdispatch 0.002972 0.002972 1 116.752 0
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->postdispatch->EVENT:controller_action_postdispatch 0.002913 0.002913 1 110.192 0
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->postdispatch->EVENT:controller_action_postdispatch->OBSERVER:customer_visitor 0.002900 0.002900 1 108.656 0
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->postdispatch->EVENT:controller_action_postdispatch->OBSERVER:customer_visitor->EVENT:clean_cache_by_tags 0.001175 0.001175 1 77.784 0
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->postdispatch->EVENT:controller_action_postdispatch->OBSERVER:customer_visitor->EVENT:clean_cache_by_tags->OBSERVER:invalidate_varnish 0.000516 0.000516 1 35.056 0
magento->routers_match->CONTROLLER_ACTION:checkout_index_index->action_body->postdispatch->EVENT:controller_action_postdispatch->OBSERVER:customer_visitor->EVENT:clean_cache_by_tags->OBSERVER:invalidate_builtin 0.000629 0.000629 1 41.08 0
Tôi cũng kích hoạt trình lược tả cơ sở dữ liệu nhưng không có truy vấn nào mất hơn 1ms mặc dù có gần 120 cuộc gọi. Nhưng điều đó thêm vào chỉ 120ms sau đó.
Tôi đã tạo một hồ sơ xdebug cục bộ và có thể thấy rằng hầu hết thời gian bị lãng phí trong việc tự động tải. Nhưng tôi không chắc đó là "bình thường". Tôi chỉ tự hỏi tại sao file_exists được gọi thường xuyên như vậy. Như tôi đã có ấn tượng, tất cả mọi thứ được biên dịch trước và lưu trữ. Tôi sử dụng composer dump-autoload -o --apcu
sau khi biên dịch di. Và tất nhiên apc đang hoạt động.
Tuy nhiên, bây giờ tôi bị mắc kẹt ở đây. Tôi dường như không thể hiểu tại sao TTFB đã 5 giây rồi. Và ngay cả khi tôi đã giải quyết rằng vẫn còn 10 giây nữa để giải thích và khắc phục. Dự đoán chính của tôi hiện tại là đây là một số yêu cầu xhr trong chặn nền. I E. Tôi thấy các phương pháp ước tính-vận chuyển chỉ bắt đầu sau một khoảng cách cực kỳ dài khoảng 7 giây ở 13 giây và mất khoảng 647ms. Tại sao nó chờ đợi quá lâu để kích hoạt điều đó? Cho đến khi hoàn thành hoạt hình trình tải được hiển thị làm cho trang dường như "treo".
Bất kỳ đầu vào đều được chào đón! Tôi hy vọng tải trang tối đa 2 - 4 giây. như đó là những gì tôi bắt đầu với.
Chỉnh sửa: Tôi đã sửa lỗi TTFB cao. Như đã nói tôi đang sử dụng Redis để lưu trữ. Cũng cho bộ nhớ đệm phiên nhưng nó dẫn đến khóa giữa hai phiên đồng thời. Trên thực tế là yêu cầu thanh toán và yêu cầu vận chuyển ước tính dẫn đến thời gian chờ 5 giây. Tôi chuyển phiên trở lại chế độ tập tin bình thường. Thật không may, điều này đã không khắc phục thời gian tải dài! Dự đoán tốt nhất hiện tại của tôi là một cái gì đó làm cho các phương pháp ước tính-vận chuyển chờ đợi trước khi được gọi dẫn đến việc chặn trang. Ngoài ra, tôi đã cố gắng trì hoãn tất cả các JS mà không thay đổi gì.
Edit2: Vì @ peter-ocallaghan lưu ý vấn đề với việc thanh toán tải quá chậm (+10 giây) thực sự chỉ là sự cố cụ thể của chrome khi mở bảng điều khiển dev. Thanh toán / giỏ hàng dường như không bị ảnh hưởng.