Waad salaaman tihiin dhammaantiin β tani waa qoraalkii shanaad ee taxanaheenna Quarkus! (Sidoo kale, daawo webinar-keena
Π
Cabbirka waxqabadku waa saldhigga aasaasiga ah ee ku dhawaad ββcasriyeyn kasta, iyo ka warbixinta isticmaalka xusuusta waa qayb muhiim ah oo ka mid ah habka falanqaynta waxqabadka. Maanta waxaan eegi doonaa qalabka cabbiraadda ee ku habboon oo loo isticmaali karo in lagu qiyaaso horumarrada la gaaray iyada oo la casriyeynayo codsiyada Java.
Macluumaad dheeraad ah oo ku saabsan cabbiraadda isticmaalka xusuusta, arag casharka Quarkus ee ciwaankiisu yahay
Hoos waxaan si fudud ku tusi doonaa sida loo barbar dhigo xogta isticmaalka xusuusta ee saddex nooc oo kala duwan oo codsi ah (JBoss EAP, JAR pack, iyo executable) anagoo ka ururinayna xogta Linux iyadoo la isticmaalayo pmap iyo ps utilities.
JBoss EAP
Waxaan bilownay tusaale arjiga JBoss EAP (eeg qaybta "Deploying helloworld" gudaha
$ pgrep -lf jboss
7268 java
Fiiro gaar ah. Xulashada -a waxay kuu oggolaaneysaa inaad soo saarto khadka taliska oo dhammaystiran (ie: $ pgrep -af jboss).
Hadda waxaan u isticmaalnaa PID 7268 gudaha ps iyo amarrada pmap.
Halkan sidan:
$ 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
Oo sida tan:
$ 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
Waxaan eegnaa qiimaha RSS oo aan aragno in JBoss EAP ay isticmaasho ku dhawaad ββ650 MB oo xusuusta ah.
xirmo JAR
Waxaan bilownay arjiga JAR (eeg qaybta "Run helloworld packed in JAR" gudaha
$ java -jar ./target/helloworld-<version>-runner.jar
Waxaan mar kale eegnaa PID-da annaga oo adeegsanayna amarka pgrep (markan waxaan isticmaalnaa ikhtiyaarka kor lagu sharraxay):
$ pgrep -af helloworld
6408 java -jar ./target/helloworld-<version>-runner.jar
Waxaan wadnaa ps iyo pmap si aan u cabbirno isticmaalka xusuusta, laakiin hadda habka 6408.
Halkan sidan:
$ ps -o pid,rss,command -p 6408
PID RSS COMMAND
6408 125732 java -jar ./target/helloworld-quarkus-runner.jar
Oo sida tan:
$ 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
Waxaan eegnaa RSS-ka mar kale oo aan aragno in xirmada JAR ay isticmaasho ku dhawaad ββ130 MB.
Faylka la fulin karo
Waxaan bilownaa kan hooyo (fiiri qaybta "Ku socodsiinta feylka la fulin karo helloworld hooyo" gudaha
$ ./target/helloworld-<version>-runner
Aan mar kale eegno PID-keeda:
$ pgrep -af helloworld
6948 ./target/helloworld-<version>-runner
Kadibna waxaan isticmaalnaa aqoonsiga nidaamka natiijada (6948) ee amarrada ps iyo pmap.
Halkan sidan:
$ 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
Waxaan eegnaa RSS oo aragnaa in faylka la fulin karo uu qaato ilaa 20 MB oo xusuusta ah.
Isbarbardhigga isticmaalka xusuusta
Markaa, waxaanu helnay lambarada soo socda ee isticmaalka xusuusta:
- JBoss EAP - 650 MB.
- xirmo JAR - 130 MB.
- Faylka la fulin karo - 20 MB.
Sida cad, faylka la fulin karo wuxuu qaadanayaa xusuusta aad uga yar.
Aan soo koobno ββqoraalada 4 iyo 5
Tan iyo qoraaladii hore, waxaan eegnay casriyeynta codsiyada Java iyadoo la adeegsanayo tignoolajiyada lagu taageeray Quarkus (CDI iyo Servlet 3), iyo sidoo kale siyaabo kala duwan oo loo horumariyo, loo dhiso loona socodsiiyo codsiyadaas. Waxaan tusnay sida loo ururiyo xogta isticmaalka xusuusta si aan u qiimeyno horumarka lagu gaaray casriyeyntan. Maqaalladani waxay kaa caawinayaan inaad fahamto sida Quarkus u shaqeeyo iyo sababta ay faa'iido u leedahay - haddii aad ka hadlayso barnaamijka helloworld fudud ee tusaalayaashayada ama codsiyada nolosha dhabta ah ee ka sii adag.
Waxaan ku soo laaban doonaa laba toddobaad kadib qoraal kama dambeys ah oo ku saabsan Quarkus - halkaas ayaan ku aragnaa!
Qoraalkeena u dambeeya, waxaan ku tusi doonaa sida la isugu daro AMQ Online iyo Quarkus si aan u dhisno nidaam farimo ku saleysan OpenShift iyadoo la adeegsanayo laba teknooloji fariimo cusub ah. Akhriso
Source: www.habr.com