Προκειμένου να ενεργοποιήσουμε την παρακολούθηση ενός JVM, αρκεί να το ξεκινήσουμε με την παράμετρο -Dcom.sun.management.jmxremote Πιο συγκεκριμένα, ξεκινώ το OC4J ως εξής:
java -Dcom.sun.management.jmxremote -XX:MaxPermSize=256m -Xms256m -Xmx768m -jar oc4j.jar
Κατόπιν, εκτελούμε το πρόγραμμα JConsole που βρίσκεται στον κατάλογο $JDK_HOME/bin . Η πρώτη οθόνη θα μας ρωτήσει για το ποιο JVM, τοπικό ή απομακρυσμένο, θέλουμε να παρακολουθήσουμε.

Κατόπιν τούτου, η κονσόλα μας παρουσιάζει πολλές και χρήσιμες πληροφορίες σχετικά με την κατάσταση μνήμης, τα active threads και τις φορτωμένες κλάσεις στο σύστημά μας, επιτρέποντας να ενεργοποιήσουμε κατά βούληση τον Garbage Collector. Με αυτόν τον τρόπο, μπορούμε να κάνουμε το πιο απλό profiling μιας εφαρμογής.

Εξαιρετικά χρήσιμο χαρακτηριστικό του JConsole είναι πως μπορεί να αντλήσει πληροφορίες διαχείρισης από το JVM, βασισμένες στην τεχνολογία Java Management Extension (JMX) Έτσι για παράδειγμα, μπορώ να δω ποιες εφαρμογές έχουν γίνει deploy στον OC4J, καθώς και να σταματήσω αν θέλω κάποιες από αυτές ή να επηρεάσω τις ιδιότητές τους.


No comments:
Post a Comment