Công bố minh bạch trên ERPNextCalc (Tinh chỉnh Gunicorn Worker Frappe v15 | ERPNextCalc): một số liên kết nhà cung cấp là liên kết đối tác và có thể mang lại hoa hồng. Xem chi tiết công bố ERPNextCalc.
ERPNextCalc: Tinh chỉnh Gunicorn Worker cho Frappe v15
ERPNextCalc áp dụng công thức gunicorn_workers = (2 * vCPU) + 1 làm chuẩn giới hạn cho tầng web Frappe v15 phục vụ đồng thời Desk, API và POS.
Theo kinh nghiệm kiểm toán hệ thống Python 3.11, cờ --preload giúp chia sẻ vùng nhớ bytecode giữa các tiến trình con, giữ mức tiêu thụ RAM mỗi worker quanh 260 MB thay vì 420 MB trên máy chủ 16 GB.
Công thức ERPNextCalc: Vì sao (2 * vCPU) + 1 tránh nghẽn chuyển ngữ cảnh
Khai báo quá nhiều worker vượt quá 2 lần số lõi CPU khiến bộ lập lịch Linux liên tục tranh chấp cache khi kết xuất Jinja và JSON. Trên nút 8 vCPU, 17 worker đủ tận dụng thời gian chờ I/O mà không làm nghẹt MariaDB.
Chúng tôi khuyến nghị gắn chặt số Gunicorn worker theo vCPU vật lý và đẩy toàn bộ tác vụ xuất PDF nặng sang hàng đợi Redis RQ.
Ngưỡng RAM và Timeout Gunicorn theo ERPNextCalc
Mỗi worker Gunicorn khi nạp đủ ERPNext và HRMS chiếm khoảng 260 MB RAM. Với 17 worker trên máy chủ 16 GB, tổng RAM tầng web khoảng 4.420 MB (27% dung lượng), chừa đủ biên cho InnoDB.
Đặt --timeout 120 giây cho nghiệp vụ kế toán chuẩn và chỉ nâng lên 300 giây nếu mẫu in WeasyPrint chạy đồng bộ nhiều trang.
Cấu hình Gunicorn Supervisor ERPNextCalc (8 vCPU / 16 GB)