Quarkus: Ag ùrachadh thagraidhean a’ cleachdadh Helloworld mar eisimpleir bho JBoss EAP Quickstart (a’ leantainn)

Halo a h-uile duine - seo an còigeamh post san t-sreath Quarkus againn! (Co-dhiù, cùm sùil air an webinar againn “Is e seo Quarkus - frèam Java dùthchasach Kubernetes”. Seallaidh sinn dhut mar a thòisicheas tu bhon fhìor thoiseach no a ghluaiseas tu fuasglaidhean deiseil)

Quarkus: Ag ùrachadh thagraidhean a’ cleachdadh Helloworld mar eisimpleir bho JBoss EAP Quickstart (a’ leantainn)

В post roimhe choimhead sinn air ùrachadh thagraidhean Java a’ cleachdadh teicneòlasan le taic Quarkus (CDI agus Servlet 3) a’ cleachdadh prògram helloworld bhon stòr mar eisimpleir Àrd-ùrlar Iarrtas Iomairt Red Hat JBoss (JBoss EAP) Quickstart. An-diugh leanaidh sinn air adhart leis a’ chuspair ùrachaidh agus bruidhnidh sinn air cùis caitheamh cuimhne.

Tha tomhas coileanaidh na bhunait bunaiteach airson cha mhòr ùrachadh sam bith, agus tha aithris air cleachdadh cuimhne na phàirt chudromach den phròiseas mion-sgrùdadh coileanaidh. An-diugh bheir sinn sùil air na h-innealan tomhais iomchaidh a dh'fhaodar a chleachdadh gus na leasachaidhean a chaidh a choileanadh le bhith ag ùrachadh iarrtasan Java a thomhas.

Airson tuilleadh fiosrachaidh mu bhith a’ tomhas cleachdadh cuimhne, faic an oideachadh Quarkus leis an tiotal A’ Tomhais Coileanaidh - Ciamar a bhios sinn a’ tomhas cleachdadh cuimhne?

Gu h-ìosal bidh sinn dìreach a’ sealltainn dhut mar a nì thu coimeas eadar dàta cleachdadh cuimhne airson trì diofar sheòrsaichean de thagraidhean (JBoss EAP, pasgan JAR, agus so-ghnìomhaichte) le bhith a’ tional an dàta air Linux a’ cleachdadh na goireasan pmap agus ps.

JBoss EAP

Bidh sinn a’ cur air bhog eisimpleir de thagradh JBoss EAP (faic an earrann “Deploying helloworld” a-steach post roimhe) agus an uairsin coimhead suas a phròiseas PID (anns an eisimpleir againn tha e 7268) a’ cleachdadh an àithne a leanas:

$ pgrep -lf jboss
7268 java

Nòta: Leigidh an roghainn -a leat an loidhne-àithne iomlan a thoirt a-mach (ie: $ pgrep -af jboss).

A-nis bidh sinn a’ cleachdadh PID 7268 anns na h-òrdughan ps agus pmap.

Seo mar sin:

$ 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

Agus mar seo:

$ 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

Bidh sinn a’ coimhead air luach RSS agus a’ faicinn gu bheil JBoss EAP ag ithe timcheall air 650 MB de chuimhne.

Pasgan JAR

Bidh sinn a’ cur air bhog an tagradh JAR (faic an roinn “Run helloworld packed in JAR” a-steach post roimhe):

$ java -jar ./target/helloworld-<version>-runner.jar

Bidh sinn a 'coimhead air an PID a-rithist a' cleachdadh an òrdugh pgrep (an turas seo bidh sinn a 'cleachdadh an roghainn -a a tha air a mhìneachadh gu h-àrd):

$ pgrep -af helloworld
6408 java -jar ./target/helloworld-<version>-runner.jar

Bidh sinn a’ ruith ps agus pmap gus cleachdadh cuimhne a thomhas, ach a-nis airson pròiseas 6408.

Seo mar sin:

$ ps -o pid,rss,command -p 6408
  PID   RSS COMMAND
 6408 125732 java -jar ./target/helloworld-quarkus-runner.jar

Agus mar seo:

$ 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

Bheir sinn sùil air an RSS a-rithist agus chì sinn gu bheil am pasgan JAR ag ithe timcheall air 130 MB.

Faidhle so-ghnìomhaichte

Bidh sinn a’ cur air bhog am fear dùthchasach (faic an earrann “A’ ruith am faidhle so-ghnìomhaichte helloworld dùthchasach" a-steach post roimhe):

$ ./target/helloworld-<version>-runner

Bheir sinn sùil air a PID a-rithist:

$ pgrep -af helloworld
6948 ./target/helloworld-<version>-runner

Agus an uairsin bidh sinn a’ cleachdadh an ID pròiseas a thig às (6948) anns na h-òrdughan ps agus pmap.

Seo mar sin:

$ 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

Bheir sinn sùil air an RSS agus chì sinn gu bheil am faidhle so-ghnìomhaichte a’ toirt suas mu 20 MB de chuimhne.

Dèan coimeas eadar caitheamh cuimhne

Mar sin, fhuair sinn na h-àireamhan a leanas airson cleachdadh cuimhne:

  • JBoss EAP - 650 MB.
  • Pasgan JAR - 130 MB.
  • Faidhle so-ghnìomhaichte - 20 MB.

Gu follaiseach, bidh am faidhle so-ghnìomhaichte a’ gabhail suas mòran nas lugha de chuimhne.

Bheir sinn geàrr-chunntas air puist 4 agus 5

Anns an dreuchd seo agus na dreuchdan roimhe, choimhead sinn ri bhith ag ùrachadh thagraidhean Java a’ cleachdadh theicneòlasan le taic ann an Quarkus (CDI agus Servlet 3), a bharrachd air grunn dhòighean air a leithid de thagraidhean a leasachadh, a thogail agus a ruith. Sheall sinn mar a chruinnicheas sinn dàta cleachdadh cuimhne gus measadh a dhèanamh air na leasachaidhean a chaidh a choileanadh le ùrachadh mar sin. Cuidichidh na h-artaigilean seo thu le bhith a’ tuigsinn mar a tha Quarkus ag obair agus carson a tha e feumail - ge bith a bheil thu a’ bruidhinn air a’ phrògram sìmplidh helloworld anns na h-eisimpleirean againn no tagraidhean fìor iom-fhillte.

Bidh sinn air ais ann an dà sheachdain le post mu dheireadh mu Quarkus - chì sinn ann sibh!

Anns an dreuchd mu dheireadh againn, seallaidh sinn mar a chuireas tu AMQ Online agus Quarkus còmhla gus siostam teachdaireachd ùr-nodha stèidhichte air OpenShift a thogail a’ cleachdadh dà theicneòlas teachdaireachd ùr. Leugh air adhart cheangal.

Source: www.habr.com

Cuir beachd ann