PHP là một kiến trúc không chia sẻ. Điều đó có lợi thế và bất lợi của nó.
Một nhược điểm là không dễ để làm một cái gì đó như thế này. Không có nhiều trạng thái có thể được lưu trữ ở đâu đó.
Tôi đã thực hiện một số thử nghiệm nhanh và khi đăng nhập, thì boostrap dường như chiếm khoảng ~ 17% tổng thời gian và hơn 50% trong số đó thực sự đang tải tất cả các tệp .module và .inc. Đó không phải là thứ mà bạn có thể lưu trữ trong memcache. Ngoài ra, nó dường như không quan trọng lắm nếu tôi sử dụng memcache hoặc bộ đệm cơ sở dữ liệu.
Tôi đã cố gắng để có được một số kết quả khi bật bộ đệm trang, nhưng Xhprof dường như không trả lại kết quả đáng tin cậy sau đó; toàn bộ điều này dường như quá nhanh Nhưng ngay cả khi đó, phần lớn nhất liên quan đến việc thực hiện các hook init / exit và tải các tập tin có vẻ như. Tôi đã tìm thấy một vấn đề thú vị ở đó: Có vẻ như mô-đun Người dùng đang làm chậm nghiêm trọng phản hồi của trang được lưu trong bộ nhớ cache vì nó kích hoạt sổ đăng ký do bộ điều khiển thực thể trong tệp .module.
Điều đó nói rằng, David Strauss đã cho thấy một số công việc thử nghiệm ở Copenhagen, nơi ông đã tạo ra một ảnh chụp nhanh bộ nhớ sau khi bootstrapping và sau đó quay lại đó một khi trang được phục vụ. Ông đã sử dụng Drupal 6 cho điều đó. Sau khi nhìn vào những con số ở trên, tôi tưởng tượng rằng hiệu suất đạt được khi làm điều này trong Drupal 7 sẽ nhỏ hơn một chút. Một lý do cho điều này là kết nối cơ sở dữ liệu được tải lười biếng (Và bạn có thể đi khá xa trong bootstrap khi sử dụng, ví dụ Memcache trước khi bạn cần thực hiện truy vấn đầu tiên) và có rất nhiều bộ nhớ cache.
Điều thực sự tồi tệ ở Drupal 7 là lớp kết xuất với các mảng lớn và các vòng lặp và vòng lặp vô tận. Đó là một trong số rất nhiều công việc hiệu suất đã đi vào Drupal 7. Hãy xem nó trông như thế nào trong Drupal 8, nếu Twig biến nó thành cốt lõi.
Cuối cùng, về những lợi thế được đề cập. Một lợi thế lớn là các tỏi tây bộ nhớ khá không liên quan vì mọi thứ đều được giải phóng sau mỗi yêu cầu. Tôi đã thấy nhiều ứng dụng Java trong đó việc sử dụng bộ nhớ liên tục tăng và cần khởi động lại thường xuyên.