Tôi có cảm giác rằng một số câu trả lời không trực tiếp giải quyết câu hỏi ban đầu, vì vậy tôi quyết định đăng bài của riêng mình. Tôi hiểu rằng câu hỏi là về sự khác biệt giữa mô hình triển khai mod_php
và mô hình triển khai máy chủ ứng dụng.
Nói một cách đơn giản, PHP thực hiện một tập lệnh cho mỗi yêu cầu và ứng dụng không biết gì về những gì đã xảy ra trước đó (trừ khi nó được mô phỏng bằng cách nào đó). Hơn nữa ngay cả mã nguồn đang được phân tích cú pháp trên mọi yêu cầu (trừ khi bạn sử dụng bộ đệm ẩn bytecode như APC). Quá trình này có thể chậm, đặc biệt nếu bạn có một khung công tác khởi tạo phức tạp.
Ngược lại, máy chủ ứng dụng phải được bắt đầu một lần và sau đó nó chờ yêu cầu được xử lý. Máy chủ ứng dụng nên dọn sạch tài nguyên sau mỗi yêu cầu (bộ nhớ được cấp phát, bộ mô tả mở, v.v.), nó cũng có thể phân phối một số tài nguyên nhất định (như kết nối cơ sở dữ liệu) có thể được sử dụng lại giữa các yêu cầu để thực hiện thêm.
Mô hình sau này (máy chủ ứng dụng) hiệu quả hơn trong hầu hết các trường hợp, nhưng mặt khác khó thiết lập và bảo trì hơn. Nó cũng đòi hỏi nhiều hơn, vì bạn phải chú ý nhiều hơn đến các tài nguyên bạn sử dụng, để tránh rò rỉ tài nguyên.
Nguồn
2008-12-29 13:41:38
Đây là mô tả tuyệt vời. Xin vui lòng upvote. –