Bonjour
J'aimerais écrire un petit démon en php. J'aurais aimé savoir si c'est
possible, comment faire pour ouvrir un port en php?
Je parle bien d'une ouverture de port, pas d'une simple connection sur
un serveur distant. Il me semble avoir déjà vu ça mais je ne retrouve
plus le code...
Merci de vos précisions
Qu'est ce que ça change que j'utilise php en tant que module d'apache, du moment que je ne touche pas au port 8O? Peut être une histoire de time out? Au fait, est ce que php sait gérer les threads?
Bon. On (je) t'ai dit que c'est pas fait pour. Si tu veux écrire un serveur NNTP tu le fais en java, en C, en C++ ou en cobol objet mais **pas en PHP**. C'est plus clair comme ça ?
J'ai bien compris que PHP n'est pas fait pour, mais alors pourquoi existe t-il tout de même une fonction create_socket() ?
Qu'est ce que ça change que j'utilise php en tant que module d'apache,
du moment que je ne touche pas au port 8O? Peut être une histoire de
time out?
Au fait, est ce que php sait gérer les threads?
Bon. On (je) t'ai dit que c'est pas fait pour. Si tu veux écrire un
serveur NNTP tu le fais en java, en C, en C++ ou en cobol objet mais
**pas en PHP**. C'est plus clair comme ça ?
J'ai bien compris que PHP n'est pas fait pour, mais alors pourquoi
existe t-il tout de même une fonction create_socket() ?
Qu'est ce que ça change que j'utilise php en tant que module d'apache, du moment que je ne touche pas au port 8O? Peut être une histoire de time out? Au fait, est ce que php sait gérer les threads?
Bon. On (je) t'ai dit que c'est pas fait pour. Si tu veux écrire un serveur NNTP tu le fais en java, en C, en C++ ou en cobol objet mais **pas en PHP**. C'est plus clair comme ça ?
J'ai bien compris que PHP n'est pas fait pour, mais alors pourquoi existe t-il tout de même une fonction create_socket() ?
Thibaut Allender
J'ai bien compris que PHP n'est pas fait pour, mais alors pourquoi existe t-il tout de même une fonction create_socket() ?
et pourquoi les voitures vendues en france peuvent-il rouler a plus de 130 Km/h ?
Qu'est ce que ça change que j'utilise php en tant que module d'apache, du moment que je ne touche pas au port 8O? Peut être une histoire de time out? Au fait, est ce que php sait gérer les threads?
Bon. On (je) t'ai dit que c'est pas fait pour. Si tu veux écrire un serveur NNTP tu le fais en java, en C, en C++ ou en cobol objet mais **pas en PHP**. C'est plus clair comme ça ?
J'ai bien compris que PHP n'est pas fait pour, mais alors pourquoi existe t-il tout de même une fonction create_socket() ?
c'est tout à fait possible de le faire en PHP mais utiliser un serveur web est hors de question. c'est pas propre !
si tu veux créer ton serveur je te conseille d'utiliser l'interpréteur de script PHP (cli).
Qu'est ce que ça change que j'utilise php en tant que module d'apache,
du moment que je ne touche pas au port 8O? Peut être une histoire de
time out?
Au fait, est ce que php sait gérer les threads?
Bon. On (je) t'ai dit que c'est pas fait pour. Si tu veux écrire un
serveur NNTP tu le fais en java, en C, en C++ ou en cobol objet mais
**pas en PHP**. C'est plus clair comme ça ?
J'ai bien compris que PHP n'est pas fait pour, mais alors pourquoi
existe t-il tout de même une fonction create_socket() ?
c'est tout à fait possible de le faire en PHP mais utiliser un serveur
web est hors de question. c'est pas propre !
si tu veux créer ton serveur je te conseille d'utiliser l'interpréteur
de script PHP (cli).
Qu'est ce que ça change que j'utilise php en tant que module d'apache, du moment que je ne touche pas au port 8O? Peut être une histoire de time out? Au fait, est ce que php sait gérer les threads?
Bon. On (je) t'ai dit que c'est pas fait pour. Si tu veux écrire un serveur NNTP tu le fais en java, en C, en C++ ou en cobol objet mais **pas en PHP**. C'est plus clair comme ça ?
J'ai bien compris que PHP n'est pas fait pour, mais alors pourquoi existe t-il tout de même une fonction create_socket() ?
c'est tout à fait possible de le faire en PHP mais utiliser un serveur web est hors de question. c'est pas propre !
si tu veux créer ton serveur je te conseille d'utiliser l'interpréteur de script PHP (cli).
Bon. On (je) t'ai dit que c'est pas fait pour. Si tu veux écrire un serveur NNTP tu le fais en java, en C, en C++ ou en cobol objet mais **pas en PHP**. C'est plus clair comme ça ?
Je suis pas tout à fait d'accord. Prenons l'exemple du serveur HTTP NanoWeb, entièrement développé en PHP, et qui marche très bien. Même si à l'origine NanoWeb était plus un "proof of concept" qu'autre chose, reste que justement, ça a plutôt bien marché...
D'autre part, il existe d'autres initiatives (genre serveurs SAP RFC, chat deamons, infrastructures de routage MOM, etc...) qui s'appuient sur les sockets PHP et cela fonctionne très bien...
Maintenant, tout depend de la taille du projet... C'est clair que pour un serveur NNTP, c'est pas forcément super intuitif d'aller développer ça en PHP, mais c'est faisable et en utilisant correctement les sockets et le modèle objet, on peut s'en tirer raisonnablement.
Par contre, tout ceci n'est valable que pour du PHP-CLI. C'est pas destiné à être lancé via le serveur web...
Xos.
Bon. On (je) t'ai dit que c'est pas fait pour. Si tu veux écrire un
serveur NNTP tu le fais en java, en C, en C++ ou en cobol objet mais
**pas en PHP**. C'est plus clair comme ça ?
Je suis pas tout à fait d'accord. Prenons l'exemple du serveur HTTP NanoWeb,
entièrement développé en PHP, et qui marche très bien. Même si à l'origine
NanoWeb était plus un "proof of concept" qu'autre chose, reste que
justement,
ça a plutôt bien marché...
D'autre part, il existe d'autres initiatives (genre serveurs SAP RFC, chat
deamons,
infrastructures de routage MOM, etc...) qui s'appuient sur les sockets PHP
et
cela fonctionne très bien...
Maintenant, tout depend de la taille du projet... C'est clair que pour un
serveur NNTP,
c'est pas forcément super intuitif d'aller développer ça en PHP, mais c'est
faisable
et en utilisant correctement les sockets et le modèle objet, on peut s'en
tirer
raisonnablement.
Par contre, tout ceci n'est valable que pour du PHP-CLI. C'est pas destiné à
être lancé via le serveur web...
Bon. On (je) t'ai dit que c'est pas fait pour. Si tu veux écrire un serveur NNTP tu le fais en java, en C, en C++ ou en cobol objet mais **pas en PHP**. C'est plus clair comme ça ?
Je suis pas tout à fait d'accord. Prenons l'exemple du serveur HTTP NanoWeb, entièrement développé en PHP, et qui marche très bien. Même si à l'origine NanoWeb était plus un "proof of concept" qu'autre chose, reste que justement, ça a plutôt bien marché...
D'autre part, il existe d'autres initiatives (genre serveurs SAP RFC, chat deamons, infrastructures de routage MOM, etc...) qui s'appuient sur les sockets PHP et cela fonctionne très bien...
Maintenant, tout depend de la taille du projet... C'est clair que pour un serveur NNTP, c'est pas forcément super intuitif d'aller développer ça en PHP, mais c'est faisable et en utilisant correctement les sockets et le modèle objet, on peut s'en tirer raisonnablement.
Par contre, tout ceci n'est valable que pour du PHP-CLI. C'est pas destiné à être lancé via le serveur web...
Xos.
John Gallet
Bonjour,
Je suis pas tout à fait d'accord. Moi non plus d'ailleurs il suffisait de relire ce que j'avais écrit trois
posts avant pour avoir ma position (qui est la même depuis 4 ans sur ce forum et son ancêtre : à chaque problème la solution technique qui lui est *la plus adaptée*), mais comme le monsieur était visiblement borné, j'ai enfoncé le clou.
NanoWeb était plus un "proof of concept" qu'autre chose, reste que justement, ça a plutôt bien marché...
Et le rapport est ? Tu le mettrais en production ? Moi non. Je n'en vois pas l'intérêt.
D'autre part, il existe d'autres initiatives (genre serveurs SAP RFC, chat deamons, infrastructures de routage MOM, etc...) qui s'appuient sur les sockets PHP et cela fonctionne très bien...
Oui ça fonctionne. D'ailleurs websphere et weblogic fonctionnent aussi n'est ce pas ? (cf plus bas).
Maintenant, tout depend de la taille du projet... C'est clair que pour un serveur NNTP, c'est pas forcément super intuitif d'aller développer ça en PHP, mais c'est faisable
Oui, c'est **faisable**.
et le modèle objet, Ah ça y est le troll nous manquait. Encore un projet où on va avoir 36 fois
le mot 'class' mais pas une seule fois 'extends'.
Par contre, tout ceci n'est valable que pour du PHP-CLI. C'est pas destiné à
être lancé via le serveur web... En effet, encore moins.
Maintenant même en ligne de commande (ou pourquoi pas en php-gtk pour avoir une interface d'admin) PHP ****n'est pas le langage le plus adapté pour écrire un serveur socket multi-thread/forké****. J'ai pas dit que c'est pas possible. J'ai dit que c'est un très mauvais choix.
Ce n'est pas parce que les partisans décérébrés de java en collent partout y compris là où ça rajoute des couches inutiles et des serveurs d'applications qui servent à rien à part à générer des coûts de licenses et de dépenses hardware que les partisans de la plateforme php doivent toujours soutenir que "oui, php est parfaitement adapté à cette tâche là". Un serveur NNTP écrit en php, je veux clairement pas voir ça sur mes machines de prod.
Donc je clos le sujet en ce qui me concerne en le répétant : OUI on peut écrire un serveur NNTP en PHP, mais NON ce n'est pas le langage le plus adapté pour le faire. Après chacun en fait ce qu'il en veut.
JG
Bonjour,
Je suis pas tout à fait d'accord.
Moi non plus d'ailleurs il suffisait de relire ce que j'avais écrit trois
posts avant pour avoir ma position (qui est la même depuis 4 ans sur ce
forum et son ancêtre : à chaque problème la solution technique qui lui est
*la plus adaptée*), mais comme le monsieur était visiblement borné, j'ai
enfoncé le clou.
NanoWeb était plus un "proof of concept" qu'autre chose, reste que
justement, ça a plutôt bien marché...
Et le rapport est ? Tu le mettrais en production ? Moi non. Je n'en vois pas
l'intérêt.
D'autre part, il existe d'autres initiatives (genre serveurs SAP RFC, chat
deamons,
infrastructures de routage MOM, etc...) qui s'appuient sur les sockets PHP
et cela fonctionne très bien...
Oui ça fonctionne. D'ailleurs websphere et weblogic fonctionnent aussi n'est
ce pas ? (cf plus bas).
Maintenant, tout depend de la taille du projet... C'est clair que pour un
serveur NNTP,
c'est pas forcément super intuitif d'aller développer ça en PHP, mais c'est
faisable
Oui, c'est **faisable**.
et le modèle objet,
Ah ça y est le troll nous manquait. Encore un projet où on va avoir 36 fois
le mot 'class' mais pas une seule fois 'extends'.
Par contre, tout ceci n'est valable que pour du PHP-CLI. C'est pas destiné
à
être lancé via le serveur web...
En effet, encore moins.
Maintenant même en ligne de commande (ou pourquoi pas en php-gtk pour avoir
une interface d'admin) PHP ****n'est pas le langage le plus adapté pour
écrire un serveur socket multi-thread/forké****. J'ai pas dit que c'est pas
possible. J'ai dit que c'est un très mauvais choix.
Ce n'est pas parce que les partisans décérébrés de java en collent partout y
compris là où ça rajoute des couches inutiles et des serveurs d'applications
qui servent à rien à part à générer des coûts de licenses et de dépenses
hardware que les partisans de la plateforme php doivent toujours soutenir
que "oui, php est parfaitement adapté à cette tâche là". Un serveur NNTP
écrit en php, je veux clairement pas voir ça sur mes machines de prod.
Donc je clos le sujet en ce qui me concerne en le répétant : OUI on peut
écrire un serveur NNTP en PHP, mais NON ce n'est pas le langage le plus
adapté pour le faire. Après chacun en fait ce qu'il en veut.
Je suis pas tout à fait d'accord. Moi non plus d'ailleurs il suffisait de relire ce que j'avais écrit trois
posts avant pour avoir ma position (qui est la même depuis 4 ans sur ce forum et son ancêtre : à chaque problème la solution technique qui lui est *la plus adaptée*), mais comme le monsieur était visiblement borné, j'ai enfoncé le clou.
NanoWeb était plus un "proof of concept" qu'autre chose, reste que justement, ça a plutôt bien marché...
Et le rapport est ? Tu le mettrais en production ? Moi non. Je n'en vois pas l'intérêt.
D'autre part, il existe d'autres initiatives (genre serveurs SAP RFC, chat deamons, infrastructures de routage MOM, etc...) qui s'appuient sur les sockets PHP et cela fonctionne très bien...
Oui ça fonctionne. D'ailleurs websphere et weblogic fonctionnent aussi n'est ce pas ? (cf plus bas).
Maintenant, tout depend de la taille du projet... C'est clair que pour un serveur NNTP, c'est pas forcément super intuitif d'aller développer ça en PHP, mais c'est faisable
Oui, c'est **faisable**.
et le modèle objet, Ah ça y est le troll nous manquait. Encore un projet où on va avoir 36 fois
le mot 'class' mais pas une seule fois 'extends'.
Par contre, tout ceci n'est valable que pour du PHP-CLI. C'est pas destiné à
être lancé via le serveur web... En effet, encore moins.
Maintenant même en ligne de commande (ou pourquoi pas en php-gtk pour avoir une interface d'admin) PHP ****n'est pas le langage le plus adapté pour écrire un serveur socket multi-thread/forké****. J'ai pas dit que c'est pas possible. J'ai dit que c'est un très mauvais choix.
Ce n'est pas parce que les partisans décérébrés de java en collent partout y compris là où ça rajoute des couches inutiles et des serveurs d'applications qui servent à rien à part à générer des coûts de licenses et de dépenses hardware que les partisans de la plateforme php doivent toujours soutenir que "oui, php est parfaitement adapté à cette tâche là". Un serveur NNTP écrit en php, je veux clairement pas voir ça sur mes machines de prod.
Donc je clos le sujet en ce qui me concerne en le répétant : OUI on peut écrire un serveur NNTP en PHP, mais NON ce n'est pas le langage le plus adapté pour le faire. Après chacun en fait ce qu'il en veut.