Các yêu cầu hệ thống của Magento 2 liên quan đến giới hạn bộ nhớ PHP ( Giới hạn tài nguyênmemory_limit
:) là gì?
Tôi gặp vấn đề khi tìm thấy những thông tin này trong Yêu cầu hệ thống mặc dù ứng cử viên phát hành thứ hai đã bị đẩy ra.
Các yêu cầu hệ thống của Magento 2 liên quan đến giới hạn bộ nhớ PHP ( Giới hạn tài nguyênmemory_limit
:) là gì?
Tôi gặp vấn đề khi tìm thấy những thông tin này trong Yêu cầu hệ thống mặc dù ứng cử viên phát hành thứ hai đã bị đẩy ra.
Câu trả lời:
Các yêu cầu hệ thống chính thức (hay đúng hơn là: khuyến nghị) là:
Tăng giới hạn bộ nhớ PHP lên ít nhất 768MB cho hoạt động bình thường hoặc 2GB để thử nghiệm.
Nguồn: Khuyến nghị cho CentOS và Ubuntu
Tôi sẽ chỉ tăng nó lên một giá trị cao hơn nếu bạn gặp phải vấn đề về giới hạn bộ nhớ. Sau đó gỡ lỗi và khắc phục các sự cố này và đặt giới hạn bộ nhớ trở lại bình thường khi thành công.
Trên thực tế memory_limit
là hoàn toàn tùy thuộc vào bạn, bạn phải xem ứng dụng của bạn hoạt động như thế nào. Đừng nhầm lẫn với số lượng lớn. Bất kỳ tập lệnh nào cũng phải hoạt động nhanh nhất có thể và chiếm không quá 3-4 lần mỗi bộ nhớ quy trình, trung bình là 60MB x 4 = ~ 300MB. IMHO
768mb chỉ là một biện pháp phòng ngừa, vì vậy máy chủ của bạn sẽ không bị tan chảy hoặc không phản hồi.
Trong một số trường hợp nó có thể vượt ra ngoài, vì vậy bạn phải gỡ lỗi những trường hợp này. cấu hình cơ sở dữ liệu và ngăn xếp web của bạn.
-1
nó chỉ đơn giản phụ thuộc vào mã magento và cấu hình ngăn xếp của bạn. bạn phải tự mình đến đây, để tìm đúng giới hạn.
Magento 2 giới hạn mức sử dụng bộ nhớ của nó ở mức 768M trong tệp .htaccess chính: https://github.com/magento/magento2/blob/2335247d4ae2dc1e0728ee73022b0a244ccd7f4c/.htaccess#L40
Đây chỉ là một yêu cầu duy nhất. Nếu cửa hàng của bạn cần phục vụ đồng thời 10 yêu cầu HTTP thì bạn cần tối đa 10 * 768M = 7680M bộ nhớ cho trình thông dịch PHP (thực tế nó thấp hơn nhiều do sử dụng bộ đệm, nhưng có một số tác vụ cần nhiều bộ nhớ như biên dịch, reindex, một số tích hợp hệ thống thứ 3 đôi khi vô hiệu hóa giới hạn bộ nhớ của nó và sử dụng rất nhiều bộ nhớ).
Ngoài ra, bạn cần một số bộ nhớ cho môi trường phần mềm khác: MySQL, máy chủ web, phần mềm thư, hệ điều hành, v.v.