Différence entre thread safe et non thread safe en PHP

Thread Safe (TS) et Non-Thread Safe (NTS) sont deux versions différentes de PHP.
 
 

Thread-safe :

Il est utilisé pour garantir que lorsque la structure de données partagée manipulée par différents threads ne peut pas entrer dans la condition de concurrence critique. La sécurité des threads est recommandée lorsque le serveur Web exécute plusieurs threads simultanément pour différentes requêtes. Dans les versions « Thread Safe », les fichiers binaires peuvent fonctionner dans un contexte de serveur Web multi-thread. La sécurité des threads consiste à créer une copie de stockage local dans chaque thread afin que les données ne se heurtent pas à un autre thread.

Par exemple:

  • Apache + LoadModule
  • IIS
Non thread safe :

Il ne vérifie pas la sécurité des threads, ce qui le rend plus rapide à exécuter, mais en même temps, il devient plus instable et se bloque très fréquemment. Il fait référence à un seul thread construit uniquement. Dans les versions « non-thread safe », les fichiers binaires sont largement utilisés dans le cas d’une interaction avec un serveur Web via le protocole FastCGI, en n’utilisant pas le multi-threading.

Par exemple:

  • Apache + FastCGI
  • IIS + FastCGI
 
Cela dépend donc de la manière dont vous voulez utiliser PHP. AFAIR utiliser PHP avec fastCGI est la méthode préférable. Si vous ne savez pas quelle version de PHP est installée sur votre système, il existe un moyen simple de le savoir.
 

Vérifiez la version de PHP Thread Safe ou Non Thread Safe installée:

Sous Windows:

php -i | findstr "Thread"

Sous Linux:

php -i | grep Thread

Dans les deux cas affichera

Thread Safety => enabled
//ou
Thread Safety => disabled
QCM sur PHP

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *