Halo sadayana - ieu mangrupikeun pos kalima dina séri Quarkus kami! (Ku jalan kitu, nonton webinar kami
В
Pangukuran kinerja mangrupikeun dasar dasar tina ampir sagala pamutahiran, sareng ngalaporkeun pamakean mémori mangrupikeun bagian penting tina prosés analisa kinerja. Dinten ieu kami bakal ningali alat ukur anu relevan anu tiasa dianggo pikeun ngitung paningkatan anu dihontal ku modérnisasi aplikasi Java.
Kanggo inpo nu langkung lengkep ihwal ngukur pamakean memori, tingali tutorial Quarkus anu judulna
Di handap ieu kami bakal nunjukkeun anjeun kumaha ngabandingkeun data pamakean mémori pikeun tilu jinis aplikasi anu béda (JBoss EAP, pakét JAR, sareng executable) ku cara ngumpulkeun data dina Linux nganggo pmap sareng ps utiliti.
JBoss EAP
Kami ngaluncurkeun conto aplikasi JBoss EAP (tingali bagian "Panyebaran helloworld" dina
$ pgrep -lf jboss
7268 java
Catetan. Pilihan -a ngidinan Anjeun pikeun nimba garis paréntah lengkep (ie: $ pgrep -af jboss).
Ayeuna kami nganggo PID 7268 dina paréntah ps sareng pmap.
Di dieu nu kumaha:
$ ps -o pid,rss,command -p 7268
PID RSS COMMAND
7268 665348 java -D[Standalone] -server -verbose:gc -Xloggc:/home/mrizzi/Tools/jboss-eap-7.2.0/jboss-eap-7.2/standalone/log/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=3M -XX:-TraceClassUnloading -Xms1303m -Xmx1303m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferI
Sareng sapertos kieu:
$ pmap -x 7268
7268: java -D[Standalone] -server -verbose:gc -Xloggc:/home/mrizzi/Tools/jboss-eap-7.2.0/jboss-eap-7.2/standalone/log/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=3M -XX:-TraceClassUnloading -Xms1303m -Xmx1303m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Dorg.jboss.boot.log.file=/home/mrizzi/Tools/jboss-eap-7.2.0/jboss-eap-7.2/standa
Address Kbytes RSS Dirty Mode Mapping
00000000ae800000 1348608 435704 435704 rw--- [ anon ]
0000000100d00000 1035264 0 0 ----- [ anon ]
000055e4d2c2f000 4 4 0 r---- java
000055e4d2c30000 4 4 0 r-x-- java
000055e4d2c31000 4 0 0 r---- java
000055e4d2c32000 4 4 4 r---- java
000055e4d2c33000 4 4 4 rw--- java
[...]
ffffffffff600000 4 0 0 r-x-- [ anon ]
---------------- ------- ------- -------
total kB 3263224 672772 643024
Kami ningali nilai RSS sareng ningali yén JBoss EAP nganggo mémori kirang langkung 650 MB.
pakét JAR
Urang ngajalankeun aplikasi JAR (tingali bagian "Jalankeun helloworld rangkep dina JAR" dina
$ java -jar ./target/helloworld-<version>-runner.jar
Kami ningali deui PID nganggo paréntah pgrep (waktos ieu kami nganggo pilihan -a anu dijelaskeun di luhur):
$ pgrep -af helloworld
6408 java -jar ./target/helloworld-<version>-runner.jar
Urang ngajalankeun ps sareng pmap pikeun ngukur pamakean mémori, tapi ayeuna pikeun prosés 6408.
Di dieu nu kumaha:
$ ps -o pid,rss,command -p 6408
PID RSS COMMAND
6408 125732 java -jar ./target/helloworld-quarkus-runner.jar
Sareng sapertos kieu:
$ pmap -x 6408
6408: java -jar ./target/helloworld-quarkus-runner.jar
Address Kbytes RSS Dirty Mode Mapping
00000005d3200000 337408 0 0 rw--- [ anon ]
00000005e7b80000 5046272 0 0 ----- [ anon ]
000000071bb80000 168448 57576 57576 rw--- [ anon ]
0000000726000000 2523136 0 0 ----- [ anon ]
00000007c0000000 2176 2088 2088 rw--- [ anon ]
00000007c0220000 1046400 0 0 ----- [ anon ]
00005645b85d6000 4 4 0 r---- java
00005645b85d7000 4 4 0 r-x-- java
00005645b85d8000 4 0 0 r---- java
00005645b85d9000 4 4 4 r---- java
00005645b85da000 4 4 4 rw--- java
[...]
ffffffffff600000 4 0 0 r-x-- [ anon ]
---------------- ------- ------- -------
total kB 12421844 133784 115692
Kami ningali deui RSS sareng ningali yén pakét JAR nyéépkeun sakitar 130 MB.
file laksana
Urang ngajalankeun anu asli (tingali bagian "Ngajalankeun file laksana helloworld asli" dina
$ ./target/helloworld-<version>-runner
Hayu urang tingali deui PID na:
$ pgrep -af helloworld
6948 ./target/helloworld-<version>-runner
Teras kami nganggo ID prosés anu dihasilkeun (6948) dina paréntah ps sareng pmap.
Di dieu nu kumaha:
$ ps -o pid,rss,command -p 6948
PID RSS COMMAND
6948 19084 ./target/helloworld-quarkus-runner
И вот так:
$ pmap -x 6948
6948: ./target/helloworld-quarkus-runner
Address Kbytes RSS Dirty Mode Mapping
0000000000400000 12 12 0 r---- helloworld-quarkus-runner
0000000000403000 10736 8368 0 r-x-- helloworld-quarkus-runner
0000000000e7f000 7812 6144 0 r---- helloworld-quarkus-runner
0000000001620000 2024 1448 308 rw--- helloworld-quarkus-runner
000000000181a000 4 4 4 r---- helloworld-quarkus-runner
000000000181b000 16 16 12 rw--- helloworld-quarkus-runner
0000000001e10000 1740 156 156 rw--- [ anon ]
[...]
ffffffffff600000 4 0 0 r-x-- [ anon ]
---------------- ------- ------- -------
total kB 1456800 20592 2684
Urang nempo RSS tur tingal yén file laksana nyokot nepi ka 20 MB memori.
Ngabandingkeun konsumsi memori
Janten, urang ngagaduhan nomer ieu pikeun panggunaan mémori:
- JBoss EAP - 650 MB.
- pakét JAR - 130 MB.
- File anu tiasa dieksekusi - 20 MB.
Jelas, file anu tiasa dieksekusi nyéépkeun mémori anu langkung sakedik.
Hayu urang nyimpulkeun tulisan 4 sareng 5
Dina ieu sareng postingan sateuacana, urang ningali modérnisasi aplikasi Java nganggo téknologi anu dirojong dina Quarkus (CDI sareng Servlet 3), ogé sababaraha cara pikeun ngembangkeun, ngawangun sareng ngajalankeun aplikasi sapertos kitu. Kami nunjukkeun kumaha carana ngumpulkeun data pamakean mémori pikeun ngévaluasi perbaikan anu dihontal ku pamutahiran sapertos kitu. Tulisan ieu ngabantosan anjeun ngartos kumaha Quarkus tiasa dianggo sareng naha éta mangpaat-naha anjeun nyarioskeun program helloworld saderhana dina conto urang atanapi aplikasi kahirupan nyata anu langkung kompleks.
Kami bakal uih deui dina dua minggu kalayan tulisan terakhir ngeunaan Quarkus - dugi ka didinya!
Dina tulisan ahir urang, urang bakal nunjukkeun kumaha ngagabungkeun AMQ Online sareng Quarkus pikeun ngawangun sistem olahtalatah basis OpenShift modern nganggo dua téknologi olahtalatah anyar. Baca terus
sumber: www.habr.com