Création d'un gros site !

Création d'un gros site ! - Divers - Programmation

Marsh Posté le 31-12-2005 à 20:51:11    

Je dois choisir une structure pour créer un serveur internet devant effectuer beaucoup de calcul par secondes et beaucoup d’accès à une base de données en écriture/lecture. Je voudrais savoir quel est la méthode (un ou plusieurs langages) la plus RAPIDE. J’aurais besoin de conseils des personnes d’expérience.
 
PHP, ASP, MySQL, Java, JSP, ODBC, Perl, Coldfusion, quoi choisir ?
 
Les critères importants sont la rapidité d’accès à la base de données et la vitesse des calculs. (Tout en tenant compte du temps de communication entre chaque langage ou interface, s’il y a lieu.)
 
Merci.

Reply

Marsh Posté le 31-12-2005 à 20:51:11   

Reply

Marsh Posté le 31-12-2005 à 21:37:20    

asp.net + sql server

Reply

Marsh Posté le 31-12-2005 à 23:39:56    

darkkrab a écrit :

Je dois choisir une structure pour créer un serveur internet devant effectuer beaucoup de calcul par secondes et beaucoup d’accès à une base de données en écriture/lecture. Je voudrais savoir quel est la méthode (un ou plusieurs langages) la plus RAPIDE. J’aurais besoin de conseils des personnes d’expérience.
 
PHP, ASP, MySQL, Java, JSP, ODBC, Perl, Coldfusion, quoi choisir ?
 
Les critères importants sont la rapidité d’accès à la base de données et la vitesse des calculs. (Tout en tenant compte du temps de communication entre chaque langage ou interface, s’il y a lieu.)
 
Merci.


 
Webdev  :D (humour)
ou sinon heu HTML+JS avec pour les données, des fichiers contenant les données séparées par des ;
c'est bientot le nouvel an !!!!

Message cité 1 fois
Message édité par gatsu35 le 31-12-2005 à 23:40:21
Reply

Marsh Posté le 31-12-2005 à 23:44:15    

gatsu35 a écrit :


c'est bientot le nouvel an !!!!


Très perspicace :o

Reply

Marsh Posté le 01-01-2006 à 02:09:40    

J’ai le goût de faire ceci :
 
HTML pour le langage structure (coté client)
JAVASCRIPT pour le langage dynamique (côté client)
PHP pour le langage de calculs et d’acheminement (coté serveur)
 
.JS (javascript) pour la base de données (non sécurisé) (lecture seulement)
MySQL pour la base de données (sécurisé) (lecture & écriture)
 
 
Qui dit plus rapide ?

Reply

Marsh Posté le 01-01-2006 à 11:43:35    

et une base de données type "fichier texte" c'est pas plus rapide ? [:petrus75]

Reply

Marsh Posté le 01-01-2006 à 11:49:13    

mais qu'est-ce qu'il faut pas entendre...
 
jsp + oracle :o


---------------
Nos estans firs di nosse pitite patreye...
Reply

Marsh Posté le 01-01-2006 à 16:07:52    

C'est pour les structures répétitives. Une fois que le client a le .js il a la structure de la page. Moins lourd donc plus rapide.
 
JSP, est-ce plus rapide que PHP ? pas sûr
Oracle, est-ce plus rapide que MySQL ? pas sûr
 
(beaucoup de calcul par secondes et beaucoup d’accès à une base de données en écriture/lecture)

Reply

Marsh Posté le 01-01-2006 à 16:22:00    

darkkrab a écrit :

C'est pour les structures répétitives. Une fois que le client a le .js il a la structure de la page. Moins lourd donc plus rapide.
 
JSP, est-ce plus rapide que PHP ? pas sûr
Oracle, est-ce plus rapide que MySQL ? pas sûr
 
(beaucoup de calcul par secondes et beaucoup d’accès à une base de données en écriture/lecture)


pour jsp/php, je pense que oui, c'est plus rapide (enfin je pense) dernierement, Caucho a implemente un interpreteur PHP en java, et les perfs sont 6 fois meilleurs qu'avec mod_php, donc y a des chances pour que java soit plus rapide, cela dit il faut prendre ce genre de tests avec des pincettes.

Reply

Marsh Posté le 01-01-2006 à 16:31:47    

le php n'est pas typé et rien que pour ca c'est déjà plus rapide...


---------------
Nos estans firs di nosse pitite patreye...
Reply

Marsh Posté le 01-01-2006 à 16:31:47   

Reply

Marsh Posté le 01-01-2006 à 16:51:53    

KangOl a écrit :

le php n'est pas typé et rien que pour ca c'est déjà plus rapide...


moi tout ce que je dis c'est que php interprete sur la plateforme java est (a en croire les tests que je mentionne ci-dessus) plus rapide que sur mod_php. Comme je pense que du bytecode java est plus rapide que du php interprete en bytecode java, je pense (et ca n'engage que moi) que du bytecode java est plus rapide que du php sur mod_php [:dawa]

Reply

Marsh Posté le 01-01-2006 à 22:53:16    

il faudrait de l'asm multimédia sur un kernel windows [:chrisbk]

Reply

Marsh Posté le 02-01-2006 à 02:04:29    

Si c'est sérieux, rien ne vaut un vrai benchmark dans les règles (le mieux étant de le faire toi-même car chaque cas est unique). :o

Reply

Marsh Posté le 03-01-2006 à 22:18:03    

Et en construisant un benchmark apache, la rapidité d’accès à la base de données et la vitesse des calculs vont être meilleurs ?

Reply

Marsh Posté le 04-01-2006 à 00:38:05    

KangOl a écrit :

le php n'est pas typé et rien que pour ca c'est déjà plus rapide...


C'est une blague [:petrus dei]

Citation :

Si c'est sérieux, rien ne vaut un vrai benchmark dans les règles (le mieux étant de le faire toi-même car chaque cas est unique). :o


Citation :

there are lies, damn lies, and benchmarks
-- Michael Otey


 
À part ça, le JS c'est d'une lenteur monstrueuse (moins on en a mieux on se porte), SQLite fonctionne très bien en "flat-file" type, MySQL est une base très rapide en lecture mais très lente en écriture (mieux vaut prendre PostgreSQL ou MSSQL si tu as beaucoup d'écritures à faire et que c'est le bottleneck de l'application), et j'ai la franche impression que tu ne connais pas les technos dans lesquelles tu te lances et que tu tires tes "besoins" (non chiffrés) de ton chapeau magique :/
 
Pour faire simple:
 
Sur le codage serveur, le plus rapide c'est probablement du CGI/FastCGI C/C++, mais bon...
Le plus rapide (et crade) le PHP, faire quelque chose de propre avec ce truc est une gageure
Pour faire quelque chose de puissant et simple, voir du côté de Ruby/RoR, ça peut t'intéresser, la vitesse du langage en tant que tel est de l'ordre de celle du PHP (donc relativement lent), mais on y gagne beaucoup en vitesse de dev.


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 04-01-2006 à 11:48:41    

Merci pour la réponse complète masklinn.
 

Citation :

j'ai la franche impression que tu ne connais pas les technos dans lesquelles tu te lances


Je crée des sites (surtout php et mysql), mais là, je dois créer un site très lourd (gros). Alors, je me mets à jour.
 
En résumé, pour la rapidité c'est Ruby/RoR et SQLite.
Et le JS, c'est lent. Mais pratique pour les structures répétitives (Ils restent en cache).

Reply

Marsh Posté le 04-01-2006 à 11:52:08    

darkkrab a écrit :


En résumé, pour la rapidité c'est Ruby/RoR et SQLite.


euh non? Ca va être dur de faire plus lent que ca.
lui te parles vitesse de développement, toi tu cherches la vitesse d'exécution.

Reply

Marsh Posté le 05-01-2006 à 03:28:14    

masklinn a écrit :

C'est une blague [:petrus dei]

Citation :

Si c'est sérieux, rien ne vaut un vrai benchmark dans les règles (le mieux étant de le faire toi-même car chaque cas est unique). :o


Citation :

there are lies, damn lies, and benchmarks
-- Michael Otey




Nan mais ya benchmarks PC Expert et vrais benchmarks aussi

Reply

Marsh Posté le 05-01-2006 à 08:40:25    

un benchmark, on peut lui faire dire tout et n'importe quoi :o


---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 05-01-2006 à 12:31:38    

Dion a écrit :

Nan mais ya benchmarks PC Expert et vrais benchmarks aussi


Va voir l'intro du Great Language Shootout.
 
Les "vrais benchmark" de languages (parce que c'est de ça qu'on parlait) ça n'existe pas


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 05-01-2006 à 12:48:00    

Personellement, vu qu'en java le code n'a pas besoin d'être réinterprété à chaque exécution, ca me semble devoir être plus rapide que le php et l'asp.
 
Pour mysql, a ce que j'ai compris, ce qui le ralentis, c'est le nombre d'insertion simultanée et le nombre de conections simultanée. Si t'as une vintaine d'insertion à faire à la fois par des conections séparé, alors c'est clair que mysql sera moins rapide que certain de ses concurents. Par contre, si t'as un seul script à la fois qui fera des insertions les une aprés les autres, la différence sera moins visible.
Avec mysql, un insert de donnée en faisant une requette par ligne sera beaucoup plus lent que si t'insére plusieurs centaines de lignes de donnée en une requette. Avec mssql, il y a le même probléme mais j'ai pas trouvé comment insérer plusieurs lignes de données en une seule requette. mysql peut donc se révéler plus rapide dans certains cas.
 
Il faut aussi penser aux limites de temps d'exécution quand on utilise des langages tel que php. Ca sert à rien d'être plus rapide si c'est pour ne faire que la moitié du boulot.
 
Pour asp, fait gaffe à la version du langage. Les premiéres versions du langage avaient la facheuse habitude de parser la totalité du fichier à chaque fois qu'on passe d'une partie html à une partie en code asp et inversement. La génération d'une page contenant de trés nombreux changement de ce genre était donc beaucoup plus lente qu'en php. Avec asp.net il n'y a plus ce probléme à ce que j'ai entendus dire.
 
Comme tu vois, le probléme est vraiment complexe et tu n'auras surement pas une réponse claire et définitive avec aussi peu de détail.
Déjà si t'as un fichier de 10 Mo à traiter pour en retirer des données (calculé pour certaines) à envoyer dans une base de donnée une fois par jours, ca ne sera pas le même langage qui sera le plus adapté que si t'as 100 000 visites en une heure. Dans le premier cas, le C/C++ sera vraiment rapide, dans le second, ca ramera si c'est un programme CGI ne seraisse que par ce que le serveur web lance une nouvelle instance du CGI à chaque exécution ce qui veut dire perte du temps du lancement pour chaque visite.
 
EDIT : Correction de terme

Message cité 1 fois
Message édité par omega2 le 05-01-2006 à 13:20:59
Reply

Marsh Posté le 05-01-2006 à 12:48:29    

masklinn a écrit :

Va voir l'intro du Great Language Shootout.
 
Les "vrais benchmark" de languages (parce que c'est de ça qu'on parlait) ça n'existe pas


 
"On" peut-être mais certainement pas l'auteur du topic :
 

Citation :


Je dois choisir une structure pour créer un serveur internet devant effectuer beaucoup de calcul par secondes et beaucoup d'accès à une base de données en écriture/lecture. Je voudrais savoir quel est la méthode (un ou plusieurs langages) la plus RAPIDE.


 
Il a quelque chose de concret et bien précis à faire. Il le programme en PHP et dans le langage X, il effectue le test pour lequel il doit trouver le langage le plus rapide, et il a trouvé le langage le plus rapide pour la tâche qu'il souhaite. Evidemment ça peut demander beaucoup de boulot, mais c'est empirique et ça marche. [:spamafote]

Reply

Marsh Posté le 05-01-2006 à 12:51:50    

darkkrab > on peut avoir plus d'infos sur le site en question ?
 
tu parles de calculs intensifs et d'accès nombreux à une base...
 
en, gros ça peut tout aussi bien être un site marchand (calculs des commandes, remises, etc. + consultation des produits, stocks et enregistrement des commandes), tout comme un site de stats (quelques milliers d'insertion dans la base par secondes, et des consultations statistiques portant sur des centaines de millions de lignes).
 
ces deux types de sites sont très différents, et leurs besoins/solutions apportées au problème sont très différentes.
 
en gros, on peut aussi bien te proposer d'utiliser de l'ASP qui écrit et lit dans un fichier XML, qu'un executable en C ou en ASM aui écrit et lit dans un datawarehouse, et écrit dans un cluter de 100 serveurs Oracle. c'est trop vague tes infos...

Reply

Marsh Posté le 05-01-2006 à 13:06:51    

omega2 a écrit :

Personellement, vu que le java n'a pas besoin d'être réexécuté à chaque exécution, ca me semble devoir être plus rapide que le php et l'asp.


php tourne habituellement dans mod_php, ou en fastcgi, pas en CGI classique [:petrus75]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 05-01-2006 à 13:21:58    

masklinn a écrit :

php tourne habituellement dans mod_php, ou en fastcgi, pas en CGI classique [:petrus75]

Autant pour moi, je voulais pas dire exécuté mais interprété et je voulais parler du code, pas de l'exécuteur.
J'ai corrigé mon message du coup.

Reply

Marsh Posté le 05-01-2006 à 21:39:02    

Une sorte de moteur 3D/Javascript. Ça demande beaucoup de requêtes (Apache et Base de données) pour construire la carte et chaque action impose plusieurs calculs. Il faut aussi penser aux interactions, encore des calculs. Et, si on compte des dizaines des milliers de connectés en même temps, ouf ! Les structures des cartes doivent être en base de données, question de confidentialité. Les scripts Javascript (Pas de Flash ou d’Applet) sont terminer ainsi que le système des requêtes. Je cherche donc des langages avec une rapidité d’exécution (pas de développement, dev) pour consolider et héberger le tout. Non, je ne suis pas fou.

Reply

Marsh Posté le 05-01-2006 à 22:30:30    

Java ou C# me semble appropriés, car les deux sont très rapides à l'éxécution et montent très bien la charge, même avec des dizaines de milliers d'actions concurrentes (par contre, je sais pas si le serveur et son OS vont supporter, parceque c'est pas un Nux de base ni un Win2K3 Server de basse qui est capable de gérer autant de thread en // d'un coup !)
 
Pour la base de données, en plus de la rapidité, il semblerait que tu as besoin d'une assez bonne robustesse. Je pense que Oracle, MSSQL ou PostGre SQL feront l'affaire. Tu peux toujours commencer avec MySQL et voir ce que ça donné, car mise à part insérer des données et les recharger (autant le faire en BLOB plutôt qu'avec des tables dans tous les sens) t'as pas besoin d'un moteur SQL de fou.

Reply

Marsh Posté le 06-01-2006 à 00:36:14    

masklinn a écrit :

Va voir l'intro du Great Language Shootout.
 
Les "vrais benchmark" de languages (parce que c'est de ça qu'on parlait) ça n'existe pas


 
Non mais si les perfs sont vraiment importantes pour lui, il peut maquetter et bencher
 
Je parle pas de dire "Pouetpouet est meilleur que TrucTruc"


---------------
When it comes to business/legal topics, just assume almost everyone commenting has no idea what they’re taking about and have no background in these subjects because that’s how it really is. Harkonnen 8-> Elmoricq 8====>
Reply

Marsh Posté le 09-01-2006 à 00:16:42    

Résumé (excluant les benchmarks) : Java + PostgreSQL. (Mais quel OS et quel serveur?)

Reply

Marsh Posté le 09-01-2006 à 23:20:01    

souk a écrit :

pour jsp/php, je pense que oui, c'est plus rapide (enfin je pense) dernierement, Caucho a implemente un interpreteur PHP en java, et les perfs sont 6 fois meilleurs qu'avec mod_php, donc y a des chances pour que java soit plus rapide, cela dit il faut prendre ce genre de tests avec des pincettes.


 
N'importe nawak ! C'est pas comparable ! Caucho traite le PHP sous forme de bytecode, ce qui est évidemment plus rapide que mod_php puisque recompilé en temps réel et à chaque fois (quoique 6 fois me semble plutôt gros). Mais il existe différents compilateurs de bytecode PHP chez Zend studio notamment et libres. Alors pouet, pouet, cacahuet !
 
JAVA c'est : pourquoi faire simple quand on peut faire compliqué !  :pt1cable:  

Reply

Marsh Posté le 09-01-2006 à 23:53:20    

bugmenot a écrit :

N'importe nawak ! C'est pas comparable ! Caucho traite le PHP sous forme de bytecode


Il compile le PHP en bytecode Java quoi, la comparaison est parfaitement valable, ce sont simplement deux implémentations différentes de PHP.
 
Maintenant, la question est de savoir si ce "gain" existe encore sur de vrai scripts (il semblerait que oui puisque ce post indique que Resin est 4 fois plus rapide que le PHP équivalent "brut" sur une installation de Mediawiki en utilisant le programme de bench "ab" d'Apache, donc ce n'est pas un bench pûrement théorique)
(et accessoirement le module est sous GPL donc ton "et libres" sur les bouzin Zend...)


Message édité par masklinn le 09-01-2006 à 23:57:12

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 10-01-2006 à 08:49:26    

Et tous ces systémes là, ils sont arrivé à une équivalence de quelle version de php? par ce que si c'est pour dire "on est 6 fois plus rapide mais on fait que du php3", ca perd de son intéret.

Reply

Marsh Posté le 10-01-2006 à 08:52:58    

surtout que c - rapide que asp.net + sql server au final :D


---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 10-01-2006 à 12:40:46    

omega2 a écrit :

Et tous ces systémes là, ils sont arrivé à une équivalence de quelle version de php? par ce que si c'est pour dire "on est 6 fois plus rapide mais on fait que du php3", ca perd de son intéret.


RTFA, php5


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 10-01-2006 à 12:43:44    

Tamahome a écrit :

surtout que c - rapide que asp.net + sql server au final :D


:D :hello:

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed