Question

Comment voulez-vous construire votre propre interface FastCGI en PHP?

Je voudrais faire quelque chose de semblable à ce que ils « faisons en Perl , mais en PHP. Est-il même possible? Serait-il plus rapide?

(C'est, je voudrais être en mesure de charger un cadre d'application web une fois dans la mémoire, et ont juste FastCGI appeler une méthode que je fournis pour chaque demande. Donc, pas le plus générique préchargement du PHP-interprète qui se passe dans la configuration PHP FastCGI « par défaut ».)

cheers!

( Modifier : est-ce pas Mongrel et RoR font cela aussi)

Ok je l'ai fait un diagramme connerie maintenant:)

text alt

Était-ce utile?

La solution

Je peux me tromper (il est tard), mais n'êtes-vous pas juste essayer de faire une certaine forme de mise en cache? Peu importe, l'interface FastCGI semble être assez bien défini. Ainsi, il devrait être possible de faire ce que vous voulez, assez facilement.

Autres conseils

Vous pouvez pas faire PHP pour PHP, vous pouvez le faire en C pour cgi-SAPI mais vous voulez probablement utiliser APC à la place.

Si vous êtes vraiment déterminé pour qu'il soit en PHP, vous pourriez en théorie, fastCGI en c .

Après quoi im deviner, vous devez exécuter un script PHP en accédant fastCGI en tant que programme autonome, l'exécution d'une boucle et d'accepter des demandes. Dans lequel votre PHP en utilisant comme une « machine virtuelle persistante » (n'a pas pu trouver un meilleur terme), qui communique via fastCGI.

Je suis d'accord que le rechargement de plusieurs de vos / etc dépendance d'abord des bibliothèques, est très facilement sur prévoyante fuite des performances. Cependant, il peut-être la conception intentionnelle, à simplifier le cycle de développement de PHP. Pensez à la pagaille variable globale des utilisateurs inexpérimentés feraient, dans un environnement persistant. Mélanger dans le fait que plus la configuration de fastCGI, va initialiser plusieurs copies / fils en fonction de la charge. Sa petite boîte de Pandore. Démarrer une nouvelle ardoise vierge pour chaque demande le simplifie.

Cependant, honnêtement ... si votre préoccupation que la performance, vous pourriez aussi bien considérer FastCGI C ++ / Node.js, comme des alternatives .... Ayant développé pour JavaScript / PHP / C ++, votre idée est certainement possible .. . Cependant, il se résume à des coûts-avantages ... Est-il en vaut la peine ?, etc.

PS:. Vous pouvez également envisager la compilation de vos sites PHP via le hip-hop

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top