Comparaison de vitesse Java / PHP [fermé]


Quel langage est le plus rapide pour le web, Java ou PHP?

Author: Josh K, 2010-07-23

6 answers

Il est difficile de répondre car en théorie Java devrait être plus rapide: il est précompilé, tout algorithme trivial fonctionnera plus rapidement en Java que PHP et il y a eu beaucoup de travail pour optimiser Java, de l'amélioration du code, des bibliothèques standard, aux compilateurs JIT, etc.

PHP est chargé et interprété à chaque fois si vous n'utilisez pas l'optimiseur Zend, les objets sont intialisés à chaque exécution, même la chaîne la plus triviale varaible est en fait un objet complexe avec beaucoup les méthodes de soutien.

Le problème est qu'en pratique, les sites PHP semblent fonctionner plus rapidement en utilisant moins de ressources.

Je pense que c'est parce que les développeurs PHP adoptent une approche plus simple de la conception et ne se perdent pas en essayant d'implémenter des modèles de conception exotiques et d'implémenter des abstractions inutiles sans fin.

 39
Author: James Anderson, 2010-12-05 11:35:42

La vitesse n'a pas d'importance

Dans la plupart des cas.

Le traitement est bon marché. Code dans ce que vous êtes à l'aise avec. Écrire un code approprié va beaucoup plus loin pour la vitesse puis choisir une langue. Des conventions de codage solides et un plan de conception aideront également davantage.

 23
Author: Josh K, 2010-07-23 05:29:24

Meilleure réponse que j'ai pu trouver

"choses à considérer:

  1. Les applications Web Java sont compilées au bytecode. Même les JSP, qui sont compilé au moment de l'exécution. C'est un avantage sur la plupart des utilisations de PHP, où l'optimiseur Zend n'est pas utiliser.

  2. Les données peuvent être mises en cache dans un servlet actif instance - pas de moyen direct / facile de faire cela en PHP à ma connaissance (il n'y a qu'un seul instance d'un servlet / JSP en mémoire)

    • Si quelqu'un sait comment mettre en cache données en PHP sans recourir à laid hacks, merci de m'éclairer!
  3. Les applications Java ont tendance à être n-tiered, ce qui se traduit généralement par une application plus maintenable à un légèrement les performances. Ce semble probablement trollish, mais honnêtement: même dans Java lui-même l'utilisation directe de JDBC sera toujours plus rapide que de passer par trois couches d'objets dans la base de données.

Mais une application Java à n niveaux est-elle capable d'atteindre la base de données plus tôt qu'un un script PHP monolithique non compilé et piraté? Je ne pense pas qu'il y ait de réponse à cette question.

Tout cela dit, je travaille sur un framework MVC à n niveaux pour php 5 (il s'appelle Pure ( http://www.sf.net/projects/php-pure )), donc mes applications PHP sont généralement à n niveaux aussi. Je vais m'inquiéter de la vitesse quand et si cela devient un problème. Pour l'instant, ce n'est certainement pas un problème."

Avec l'aimable autorisation de krumms

 10
Author: Ryan, 2010-07-23 05:34:26

Ne Peut pas répondre à cette question avec l'un ou l'autre, sauf si vous définissez ce que vous souhaitez mesurer la vitesse de.

Certaines choses sont beaucoup plus rapides en PHP (dans une fonction native par exemple), d'autres sont beaucoup plus rapides en Java.

 3
Author: thomasrutter, 2010-07-23 05:41:13

En plus de la vitesse, je crois que les performances de Java sont meilleures que PHP, mais développer un projet PHP est plus rapide

 3
Author: Truong Ha, 2010-07-23 05:57:44

L'intention de chaque langue est sensiblement différente de l'autre, donc si vous discutez de l'utilisation à utiliser pour une tâche particulière, vous devriez généralement fonder la décision sur cette tâche (et sur la pertinence de chaque langue) plutôt que sur les performances.

Pour les performances brutes du code écrit dans le langage (par opposition au simple appel de code dans la bibliothèque standard), Java fonctionnera probablement plus vite que PHP en règle extrêmement générale. Si cela compte, les chances sont que PHP n'est tout simplement pas très bien adapté à la tâche à accomplir.

 1
Author: Jerry Coffin, 2010-07-23 05:46:31