webman performansı
Geleneksel çerçeve istek işleme süreci
- nginx/apache isteği alır
- nginx/apache isteği php-fpm'ye iletir
- php-fpm ortamı başlatır, örneğin değişken listesi oluşturur
- php-fpm çeşitli uzantı/modüllerin RINIT'ini çağırır
- php-fpm diskten php dosyasını okur (opcache kullanılarak bu önlenebilir)
- php-fpm sözdizimsel analiz, dilbilgisel analiz yapar, opcode'a derler (opcache kullanılarak bu önlenebilir)
- php-fpm opcode'u yürütür, 8.9.10.11 dahil
- Çerçeve başlatılır, çeşitli sınıflar örneğin konteyner, kontrolör, yönlendirme, ara yazılım gibi oluşturulur.
- Çerçeve veritabanına bağlanır ve yetkilendirme yapar, redis'e bağlanır
- Çerçeve iş mantığını yürütür
- Çerçeve veritabanı, redis bağlantısını kapatır
- php-fpm kaynakları serbest bırakır, tüm sınıf tanımlarını, örneklerini yok eder, sembol tablosunu yok eder vb.
- php-fpm sırasıyla çeşitli uzantı/modüllerin RSHUTDOWN yöntemlerini çağırır
- php-fpm sonuçları nginx/apache'ye iletir
- nginx/apache sonuçları istemciye geri gönderir
webman’ın istek işleme süreci
- Çerçeve isteği alır
- Çerçeve iş mantığını yürütür (opcode bayt kodu)
- Çerçeve sonucu istemciye geri gönderir
Evet, nginx ters proxy olmadığında, çerçevede sadece bu 3 adım var. Bu, php çerçevesinin ulaşabileceği en uç durumdur ve bu durumda webman performansı geleneksel çerçevelerin birkaç katı hatta onlarca katıdır.
Daha fazla bilgi için stres testi