158 votes

Différence entre l’échantillonnage et les profils de jVisualvm

VisualVM possède deux onglets distincts pour l’échantillonnage et le profilage. Quelqu'un peut-il m’aider à comprendre la différence entre l’échantillonnage et les profils VisualVM ?

183voto

npe Points 6521

Sampling signifie prendre beaucoup de fil décharges et l'analyse de traces de pile. C'est généralement plus rapide, ne nécessite pas de runtime changements dans votre bytecode (qui peut le casser), mais est également moins précis.

Profiling moyen instrumentant vos classes et de méthodes, de sorte qu'ils "rapport" à chaque fois qu'ils sont exécutés. C'est plus précis, car il compte chaque invocation de méthode instrumentée, et pas seulement ceux pris lors de la décharge, c'est fait. Cependant instrumentation signifie que le bytecode des classes est changé, et cela pourrait briser votre programme. En fait, pour cette raison, en utilisant le profilage sur les grands serveurs d'application (comme JBoss ou WebLogic) provoque souvent tout de mourir ou de se bloquer.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X