Processus d'exécution
Processus de démarrage du processus
Après avoir exécuté php start.php start, le processus d'exécution est le suivant :
- Chargement de la configuration dans le répertoire config/
- Configuration des paramètres du Worker tels que
pid_file
,stdout_file
,log_file
,max_package_size
, etc. - Création du processus webman et écoute sur le port (par défaut 8787)
- Création du processus personnalisé en fonction de la configuration
- Après le démarrage des processus webman et personnalisés, les opérations suivantes sont effectuées (toutes exécutées dans onWorkerStart) :
① Chargement des fichiers définis dansconfig/autoload.php
, tels queapp/functions.php
② Chargement des middlewares définis dansconfig/middleware.php
(y comprisconfig/plugin/*/*/middleware.php
)
③ Exécution de la méthodestart
de la classe définie dansconfig/bootstrap.php
(y comprisconfig/plugin/*/*/bootstrap.php
) pour initialiser certains modules, comme l'initialisation de la base de données Laravel
④ Chargement des routes définies dansconfig/route.php
(y comprisconfig/plugin/*/*/route.php
)
Processus de traitement des requêtes
- Vérification si l'URL de la requête correspond à un fichier statique dans le répertoire public. Si oui, renvoi du fichier (fin de la requête). Sinon, passage à l'étape 2.
- Vérification si l'URL correspond à une certaine route. Si elle ne correspond pas, passe à l'étape 3 ; sinon, passe à l'étape 4.
- Vérification si les routes par défaut sont désactivées. Si oui, renvoi d'une erreur 404 (fin de la requête). Sinon, passe à l'étape 4.
- Recherche des middlewares correspondant à la requête, exécution des opérations préalables des middlewares dans l'ordre (phase de requête du modèle oignon), exécution de la logique métier du contrôleur, exécution des opérations ultérieures des middlewares (phase de réponse du modèle oignon), fin de la requête. (Voir le modèle de middleware oignon)