Kumusta sa tanan - kini ang ikalima nga post sa among serye sa Quarkus! (By the way, tan-awa ang among webinar
Π
Ang pagsukod sa pasundayag mao ang sukaranan nga sukaranan sa hapit bisan unsang pag-upgrade, ug ang pagreport sa paggamit sa memorya usa ka hinungdanon nga bahin sa proseso sa pag-analisar sa pasundayag. Karon atong tan-awon ang may kalabutan nga mga himan sa pagsukod nga magamit sa pag-ihap sa mga kalamboan nga nakab-ot pinaagi sa pagmoderno sa mga aplikasyon sa Java.
Para sa dugang nga impormasyon sa pagsukod sa paggamit sa memorya, tan-awa ang Quarkus tutorial nga giulohan
Sa ubos ipakita lang namo kanimo kung giunsa pagtandi ang data sa paggamit sa memorya alang sa tulo ka lain-laing mga matang sa aplikasyon (JBoss EAP, JAR package, ug executable) pinaagi sa pagkolekta sa datos sa Linux gamit ang pmap ug ps utilities.
JBoss EAP
Naglunsad kami og usa ka pananglitan sa aplikasyon sa JBoss EAP (tan-awa ang seksyon nga "Pag-deploy sa helloworld" sa
$ pgrep -lf jboss
7268 java
Matikdi. Ang -a nga kapilian nagtugot kanimo sa pagkuha sa kompleto nga command line (ie: $ pgrep -af jboss).
Karon atong gigamit ang PID 7268 sa ps ug pmap commands.
Ania dinhi:
$ 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
Ug ingon niini:
$ 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
Gitan-aw namon ang kantidad sa RSS ug nakita nga ang JBoss EAP naggamit sa gibana-bana nga 650 MB nga memorya.
JAR nga pakete
Among gilusad ang JAR application (tan-awa ang seksyon nga βRun helloworld packaged in JARβ in
$ java -jar ./target/helloworld-<version>-runner.jar
Atong tan-awon pag-usab ang PID gamit ang pgrep command (karon atong gamiton ang -a option nga gihulagway sa ibabaw):
$ pgrep -af helloworld
6408 java -jar ./target/helloworld-<version>-runner.jar
Nagdagan kami sa ps ug pmap aron sukdon ang paggamit sa memorya, apan karon alang sa proseso 6408.
Ania dinhi:
$ ps -o pid,rss,command -p 6408
PID RSS COMMAND
6408 125732 java -jar ./target/helloworld-quarkus-runner.jar
Ug ingon niini:
$ 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
Gitan-aw namon pag-usab ang RSS ug nakita nga ang pakete sa JAR nagkonsumo sa gibana-bana nga 130 MB.
Executable nga file
Gilunsad namo ang lumad (tan-awa ang seksyon nga "Pagdagan sa lumad nga helloworld executable file" sa
$ ./target/helloworld-<version>-runner
Atong tan-awon pag-usab ang PID niini:
$ pgrep -af helloworld
6948 ./target/helloworld-<version>-runner
Ug dayon atong gamiton ang resulta nga proseso ID (6948) sa ps ug pmap commands.
Ania dinhi:
$ 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
Atong tan-awon ang RSS ug tan-awon nga ang executable file mokuha ug mga 20 MB nga memorya.
Pagkumpara sa konsumo sa memorya
Busa, nakuha namo ang mosunod nga mga numero alang sa paggamit sa memorya:
- JBoss EAP - 650 MB.
- JAR nga pakete - 130 MB.
- Executable nga file - 20 MB.
Dayag nga, ang executable file nagkinahanglan og mas gamay nga memorya.
Atong i-summarize ang mga post 4 ug 5
Niini ug sa miaging mga post, among gitan-aw ang pag-modernize sa mga aplikasyon sa Java gamit ang mga teknolohiya nga gisuportahan sa Quarkus (CDI ug Servlet 3), ingon man usab ang lainlaing mga paagi sa pagpalambo, paghimo ug pagpadagan sa ingon nga mga aplikasyon. Gipakita namon kung giunsa ang pagkolekta sa datos sa paggamit sa memorya aron mahibal-an ang mga pag-uswag nga nakab-ot sa ingon nga pag-upgrade. Kini nga mga artikulo makatabang kanimo nga masabtan kung giunsa ang paglihok sa Quarkus ug kung ngano nga kini mapuslanon - kung naghisgot ka bahin sa yano nga programa sa helloworld sa among mga pananglitan o labi ka komplikado nga mga aplikasyon sa tinuod nga kinabuhi.
Mobalik kami sa duha ka semana nga adunay katapusang post bahin sa Quarkus - magkita ta didto!
Sa among katapusang post, ipakita namo kung unsaon paghiusa ang AMQ Online ug Quarkus aron makatukod og modernong OpenShift-based messaging system gamit ang duha ka bag-ong messaging technologies. Basaha pa
Source: www.habr.com