C'est quelque chose que je n'ai jamais vu faire, et je ne suis pas dans ma recherche, mais mon patron est intéressé par l'idée. Nous examinons quelques options d'équilibrage de charge et nous nous demandons s'il est possible d'installer apache et php sur plusieurs serveurs, gérés par un équilibreur de charge, mais avec tout le code php sur un serveur, les différents serveurs Apache pointant vers le serveur. une base de code central?Code PHP sur serveur séparé d'Apache?
Répondre
Par exemple, les montages NFS sont certainement possibles, mais je ne le recommanderais pas. Une grande partie de l'avantage de l'équilibrage de charge est perdue, et vous réintroduisez un seul point de défaillance. Lors de la synchronisation du code, rsync cronjob peut gérer très bien lui-même, ou un rsync manuel sur le déploiement peut être fait.
Quelle est la raison vous voudriez cette base de code central? Je suis environ 99% sûr qu'il y a une meilleure solution, puis un seul serveur de distribution de code.
Je crois que c'est possible. Pour ajouter à la réponse de Wrikken, je peux imaginer que NFS pourrait être un bon choix. Cependant, il y a quelques inconvénients et mises en garde. Pour un, quand Apache tente d'accéder aux fichiers sur un partage NFS qui a disparu (connexion perdue, l'hôte a échoué, etc) très mauvais choses se produisent. Apache se bloque et continue d'essayer de récupérer le fichier. Les processus qui tentent d'accéder au partage, pour une raison quelconque, ne meurent pas et il est nécessaire de redémarrer le serveur.
Si vous finissez par le faire, je recommanderais un cache d'opcode, tel que APC. APC met en cache le php pré-traité localement et élimine les allers-retours à votre stockage. Juste être prêt à effacer le cache d'opcode à chaque fois que vous mettez à jour votre application/
Dans mon expérience, APC est un bon cache à avoir, mais vérifie le fichier pour les modtimes, donc n'a pas besoin d'effacer lors de la mise à jour des fichiers, et échoue également si les fichiers ne sont pas là. Ou ai-je manqué certains paramètres APC? – Wrikken
Bien sûr, apc.stat, qui est défini sur 1 par défaut et non inclus dans le fichier apc.ini par défaut. Si la valeur est 0, APC ne vérifie pas la date de mise à jour des fichiers php et conserve la version pré-traitée jusqu'à ce que le cache des opcode soit effacé. L'augmentation des performances avec un paramètre de 0 est assez énorme, btw. –
PHP doit fonctionner sous quelque chose pour agir comme un processeur Web, Apache est le plus populaire. J'ai effectué des montages NFS sur des serveurs sans problème. Les chances sont si NFS est en panne, le réseau est en panne. Mais il ne faut pas longtemps pour faire un rsync sur les serveurs pour répliquer les fichiers, et c'est vraiment une meilleure idée. Je ne suis pas sûr de ce que votre contenu est, mais vous pouvez séparer les fichiers statiques comme javascript, CSS et les images afin qu'ils soient sur leur propre serveur. lighttpd est un bon serveur web léger pour des choses comme ça. Ensuite, vous vous retrouvez avec un serveur php "dédié". Vous n'avez même pas besoin d'un équilibreur de charge pour cette configuration. Gardez à l'esprit que PHP stocke les sessions sur le système de fichiers local. Donc, si vous utilisez des sessions, vous devez vous assurer que les utilisateurs reviennent toujours sur le même serveur. Sinon, vous devez faire quelque chose comme des sessions de stockage dans memcache.
- 1. Code PHP sur le serveur comète orbite
- 2. php onglet preg_match séparé
- 3. Android code séparé en paquets
- 4. PHP SOAP code d'erreur: soap: Serveur
- 5. code PHP cassé sur la machine locale mais travaillant sur le serveur de mise en scène
- 6. php: chargement d'un fichier sur le serveur
- 7. Async Socket Listener sur thread séparé - VB.net
- 8. Nouveau sur PHP, puis-je insérer PHP dans le code?
- 9. aide pour configurer le serveur MySQL séparé pour rails
- 10. Modifier NotifyIcon sur un formulaire séparé
- 11. Wordpress commentaire séparé et pingback sur vingt dix thème
- 12. Fichier CSS séparé pour le contrôle du serveur Web ASP.NET
- 13. Quercus: php sur le serveur GlassFish
- 14. Arrêt d'un serveur TCP asynchrone sur un thread séparé en C#
- 15. iPhone - méthodes générales sur un fichier séparé
- 16. Gestion d'une sauvegarde sur un thread séparé
- 17. Télécharger un fichier avec php sur un autre serveur php
- 18. PHP Mixer le code du serveur avec la sortie HTML
- 19. Extension du code C# avec un assembly séparé
- 20. séparé Javascript, iframe/parent
- 21. php code fonctionne avec mamp mais pas sur le serveur ubuntu
- 22. je veux le code .htaccess savoir si php est installé sur le serveur
- 23. Preg match sur le code d'affichage php
- 24. question sur le code php d'un CMS
- 25. portage de ce code php sur C#
- 26. google code + serveur temporaire?
- 27. fonction php mail ne travaillant sur le serveur local et non pas sur le serveur distant
- 28. manipulation php code
- 29. Évaluation du code PHP
- 30. léger serveur PHP RESTful
ou même un contrôle du système de contrôle de version. Et NFS n'est certainement pas la seule alternative à considérer pour un système de fichiers en réseau. –
Vous avez raison, un partage NFS n'était qu'un exemple. – Wrikken