İşlem Akışı
Süreç Başlatma Akışı
php start.php start
komutu çalıştırıldıktan sonra işlem akışı aşağıdaki gibidir:
config/
altındaki yapılandırma dosyalarını yükleyinpid_file
,stdout_file
,log_file
,max_package_size
gibi Worker ile ilgili yapılandırmaları ayarlayın- webman sürecini oluşturun ve portu dinleyin (varsayılan 8787)
- Yapılandırmaya göre özel süreçler oluşturun
- webman süreci ve özel süreçler başlatıldıktan sonra aşağıdaki mantığı uygulayın (aşağıdakilerin hepsi
onWorkerStart
içinde çalıştırılır):
①config/autoload.php
içinde ayarlanan dosyaları yükleyin, örneğinapp/functions.php
②config/middleware.php
(veconfig/plugin/*/*/middleware.php
) içinde ayarlanan ara yazılımları yükleyin
③config/bootstrap.php
(veconfig/plugin/*/*/bootstrap.php
) içinde ayarlanan sınıflarınstart
yöntemini çalıştırın, bazı modülleri başlatmak için; örneğin Laravel veritabanı başlangıç bağlantısı
④config/route.php
(veconfig/plugin/*/*/route.php
) içinde tanımlanan yönlendirmeleri yükleyin
İsteği İşleme Akışı
- İstek URL'sinin
public
altındaki statik dosyalara karşılık gelip gelmediğini kontrol edin, eğer karşılık geliyorsa dosyayı döndürün (isteği sonlandırın), gelmiyorsa 2. maddeye geçin - URL'ye göre belirli bir yönlendirmeyi vurup vurmadığını kontrol edin, vurmadıysa 3. maddeye, vurduysa 4. maddeye geçin
- Varsayılan yönlendirme kapalı mı, eğer kapalıysa 404 döndürün (isteği sonlandırın), değilse 4. maddeye geçin
- İstekle eşleşen denetleyici ara yazılımlarını bulun, ara yazılım ön işlemlerini sırayla uygulayın (soğan modeli istek aşaması), denetleyici iş mantığını uygulayın, ara yazılım son işlemlerini uygulayın (soğan modeli yanıt aşaması), istek sonlandırılır. (bkz. Ara Yazılımlar Soğan Modeli)