Quarkus: Casriyeynta Codsiyada Isticmaalka Helloworld tusaale ahaan JBoss EAP Quickstart (sii socota)

Waad salaaman tihiin dhammaantiin – tani waa qoraalkii shanaad ee taxanaheenna Quarkus! (Sidoo kale, daawo webinar-keena "Tani waa Quarkus - Kubernetes qaabka Java ee asalka ah". Waxaan ku tusi doonaa sida looga bilaabo xoqdo ama u wareejinta xalalka diyaarsan)

Quarkus: Casriyeynta Codsiyada Isticmaalka Helloworld tusaale ahaan JBoss EAP Quickstart (sii socota)

Π’ post hore Waxaan eegnay casriyeynta codsiyada Java iyadoo la adeegsanayo tignoolajiyada ay taageerto Quarkus (CDI iyo Servlet 3) iyadoo la adeegsanayo barnaamijka helloworld ee kaydka tusaale ahaan. Koofiyada Cas JBoss Enterprise Application Platform (JBoss EAP) Quickstart. Maanta waxaan sii wadi doonaa mawduuca casriyeynta waxaanan ka wada hadli doonaa arrinta isticmaalka xusuusta.

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 Cabbirka Waxqabadkaβ€”Sideen u cabbirnaa isticmaalka xusuusta?

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 post hore) ka dibna fiiri nidaamkeeda PID (tusaale ahaan waa 7268) adoo isticmaalaya amarka soo socda:

$ 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 post hore):

$ 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 post hore):

$ ./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 link.

Source: www.habr.com

Add a comment