2015-04-24 1 views
0

Je comprends que les anciennes JVM peuvent avoir des problèmes de sécurité/performance, mais ma question ne concerne pas la JVM elle-même. Est-il possible d'introduire des problèmes de sécurité/performance dans un code qui a été écrit pour Java 1.8, mais qui a ensuite été rétroporté à 1.5 en raison du processus de conversion lui-même?Existe-t-il des problèmes de sécurité/performance avec le backporting du code Java de 1.8 à 1.5?

Je n'ai pas trouvé beaucoup de gens discutant de cela, mais j'ai trouvé quelques commentaires dans le blog de l'auteur d'un outil de backporting Java 8 lambda où il devine que backporting Lambda expressions may actually increase performance slightly.

+0

Je ne suis pas un expert, mais en dehors de la JVM 1.5 en utilisant une ancienne forme de JIT, je ne peux pas penser à des problèmes de performance. –

+0

@JAtkin Merci, c'est ce que je pense aussi, mais je ne suis pas très expérimenté avec ça alors j'ai voulu voir si je manquais quelque chose. N'hésitez pas à publier cette réponse et je l'accepterai si personne ne publie une réponse contradictoire dans un jour ou deux. –

Répondre

1

Here vous pouvez trouver une référence à comparer la JVM 1.6 à 7 et 8. J'ai un extrait ici:

Mes observations:

Sur le plus grand ensemble de données (machine Réaffectation B10), qui dépassent tout des autres ensembles de données de taille, Java 8 est 20% plus rapide que Java 7, ce qui était déjà 17% plus rapide que Java 6.

dans certains cas, Java 8 est plus lent que Java 7. spécialement pour les ensembles de données de planification des cours, Java 8 est 6% plus lent que Java 7. Espérons que les nouvelles versions de Java 8 seront résolues cette régression de performance bientôt.

En moyenne, Java 8 est seulement 1% plus rapide que Java 7. Ce tout Java 7 est déjà 16% plus rapide que Java 6.

Malgré que ce soit la première version finale de OpenJDK 8, je ne l'ai pas trouver des régressions dans Java 8. Les exemples d'OptaPlanner sont reproductibles à 100%, de sorte que, comme prévu, les différents JRE donnent exactement les mêmes résultats à chaque itération.

Il ressemble à Java 8 est un bon peu plus vite que 6, et je ne peux que supposer Java 1.5 est plus lent que Java 6.

Quant à votre question sur la sécurité, je ne sais pas. Je n'ai jamais utilisé java EE ou spring, ou quoi que ce soit d'autre qui avait besoin de sécurité d'ailleurs.