Điểm:0

Sự cố lạ với Pthreads - Tại sao có sự chậm trễ trong mỗi lần gửi Chủ đề mới khi opcache.enable_cli bị tắt?

lá cờ jp

Vì vậy, đối với ngữ cảnh, tôi đang chạy PHP-FPM 7.4 trên Ubuntu và tôi đã biên dịch nó bằng ZTS. Sau đó thêm phần mở rộng Pthreads và ZSTD .

Tôi đang chạy vài trăm tác vụ và tôi cần chúng tạo ra các quy trình php mới nhanh nhất có thể, nhưng sau nhiều lần kiểm tra, tôi nhận ra rằng mặc dù tập lệnh của tôi chạy trong 0,001 giây, nhưng mỗi lần tôi tạo ra một Chủ đề PHP mới bằng Pthread, nó lại thêm 0,01 giây vào phương trình, làm cho thời gian của mỗi lần lặp lại vòng lặp nhân với 10 .

Tôi đang cố gắng tìm những lời giải thích khả thi cho điều này trong vài tuần rồi, và cho đến nay sau khi thực hiện nhiều thử nghiệm và điều chỉnh nhiều cài đặt, điều duy nhất có ý nghĩa là đây là Giới hạn Pthreads theo thiết kế.

Bước hợp lý tiếp theo sẽ là cập nhật mã cho dự án Parallel mới hơn nhưng trong khi chờ đợi, tôi thấy có điều gì đó gây tò mò, khi tôi bật opcache.enable_cli trong cấu hình PHP FPM, sự cố gần như không còn nữa và hầu hết các luồng không bị trì hoãn!

Đáng buồn thay, điều này gây ra các lỗi lỗi phân đoạn/tham nhũng zend_mm_heap liên tục mà từ những gì tôi đã đọc thực sự không thể sửa được (đó có thể là vấn đề cốt lõi của zend hoặc pthreads), nhưng có vẻ như đó là một khởi đầu tốt để hiểu gốc rễ của vấn đề .

Bất kỳ ai ?

Michael Hampton avatar
lá cờ cz
Threaded PHP đã là một bãi mìn của các lỗi và các vấn đề khác trong khoảng thời gian nó tồn tại. Có vẻ như ít đã thay đổi. Tốt nhất nên tránh nếu có thể.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.