QuarkusαŸ– αž€αžΆαžšαž’αŸ’αžœαžΎαž‘αŸ†αž“αžΎαž”αž€αž˜αŸ’αž˜αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŠαŸ„αž™αž”αŸ’αžšαžΎ Helloworld αž‡αžΆαž§αž‘αžΆαž αžšαžŽαŸαž–αžΈ JBoss EAP Quickstart (ត)

αž‡αŸ†αžšαžΆαž”αžŸαž½αžšαž’αŸ’αž“αž€αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αŸ’αž“αžΆ - αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž”αŸ’αžšαž€αžΆαžŸαž‘αžΈαž”αŸ’αžšαžΆαŸ†αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸŠαŸαžšαžΈ Quarkus αžšαž”αžŸαŸ‹αž™αžΎαž„! (αžŠαŸ„αž™αžœαž·αž’αžΈαž“αŸαŸ‡αžŸαžΌαž˜αž˜αžΎαž› webinar αžšαž”αžŸαŸ‹αž™αžΎαž„αŸ” "αž“αŸαŸ‡αž‚αžΊαž‡αžΆ Quarkus - Kubernetes ដើម Java framework". αž™αžΎαž„αž“αžΉαž„αž”αž„αŸ’αž αžΆαž‰αž’αŸ’αž“αž€αž–αžΈαžšαž”αŸ€αž”αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž–αžΈαžŠαŸ†αž”αžΌαž„ αž¬αž•αŸ’αž‘αŸαžšαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŠαŸ‚αž›αžαŸ’αžšαŸ€αž˜αžšαž½αž…αž‡αžΆαžŸαŸ’αžšαŸαž…)

QuarkusαŸ– αž€αžΆαžšαž’αŸ’αžœαžΎαž‘αŸ†αž“αžΎαž”αž€αž˜αŸ’αž˜αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŠαŸ„αž™αž”αŸ’αžšαžΎ Helloworld αž‡αžΆαž§αž‘αžΆαž αžšαžŽαŸαž–αžΈ JBoss EAP Quickstart (ត)

Π’ αž”αŸ’αžšαž€αžΆαžŸαž˜αž»αž“αŸ” αž™αžΎαž„αž”αžΆαž“αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž€αžΆαžšαž’αŸ’αžœαžΎαž‘αŸ†αž“αžΎαž”αž€αž˜αŸ’αž˜αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ Java αžŠαŸ„αž™αž”αŸ’αžšαžΎαž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαžŠαŸ‚αž›αž‚αžΆαŸ†αž‘αŸ’αžš Quarkus (CDI αž“αž·αž„ Servlet 3) αžŠαŸ„αž™αž”αŸ’αžšαžΎαž€αž˜αŸ’αž˜αžœαž·αž’αžΈ helloworld αž–αžΈαžƒαŸ’αž›αžΆαŸ†αž„αž‡αžΆαž§αž‘αžΆαž αžšαžŽαŸ Red Hat JBoss Enterprise Application Platform (JBoss EAP) Quickstart. αžαŸ’αž„αŸƒαž“αŸαŸ‡αž™αžΎαž„αž“αžΉαž„αž”αž“αŸ’αžαž”αŸ’αžšαž’αžΆαž“αž”αž‘αž“αŸƒαž‘αŸ†αž“αžΎαž”αž€αž˜αŸ’αž˜ αž“αž·αž„αž–αž·αž—αžΆαž€αŸ’αžŸαžΆαž’αŸ†αž–αžΈαž”αž‰αŸ’αž αžΆαž“αŸƒαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αŸ”

αž€αžΆαžšαžœαžΆαžŸαŸ‹αžœαŸ‚αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž‚αžΊαž‡αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž“αŸƒαž€αžΆαžšαž’αŸ’αžœαžΎαž±αŸ’αž™αž”αŸ’αžšαžŸαžΎαžšαž‘αžΎαž„αžŸαŸ’αž‘αžΎαžšαžαŸ‚αž‘αžΆαŸ†αž„αž’αžŸαŸ‹ αž αžΎαž™αž€αžΆαžšαžšαžΆαž™αž€αžΆαžšαžŽαŸαž’αŸ†αž–αžΈαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž‚αžΊαž‡αžΆαž•αŸ’αž“αŸ‚αž€αžŸαŸ†αžαžΆαž“αŸ‹αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžœαž·αž—αžΆαž‚αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαŸ” αžαŸ’αž„αŸƒαž“αŸαŸ‡αž™αžΎαž„αž“αžΉαž„αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž§αž”αž€αžšαžŽαŸαžœαžΆαžŸαŸ‹αžŸαŸ’αž‘αž„αŸ‹αžŠαŸ‚αž›αž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αžŠαŸ‚αž›αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαžŠαžΎαž˜αŸ’αž”αžΈαž€αŸ†αžŽαžαŸ‹αž”αžšαž·αž˜αžΆαžŽαž“αŸƒαž€αžΆαžšαž€αŸ‚αž›αž˜αŸ’αž’αžŠαŸ‚αž›αžŸαž˜αŸ’αžšαŸαž…αž”αžΆαž“αžŠαŸ„αž™αž€αžΆαžšαž’αŸ’αžœαžΎαž‘αŸ†αž“αžΎαž”αž€αž˜αŸ’αž˜αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ Java αŸ”

αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž–αŸαžαŸŒαž˜αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αžŸαŸ’αžαžΈαž–αžΈαž€αžΆαžšαžœαžΆαžŸαŸ‹αžŸαŸ’αž‘αž„αŸ‹αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ† αžŸαžΌαž˜αž˜αžΎαž›αž€αžΆαžšαž”αž„αŸ’αžšαŸ€αž“ Quarkus αžŠαŸ‚αž›αž˜αžΆαž“αž…αŸ†αžŽαž„αž‡αžΎαž„ αž€αžΆαžšαžœαžΆαžŸαŸ‹αžœαŸ‚αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αž - αžαžΎαž™αžΎαž„αžœαžΆαžŸαŸ‹αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž™αŸ‰αžΆαž„αžŠαžΌαž…αž˜αŸ’αžαŸαž…?

αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž“αŸαŸ‡ αž™αžΎαž„αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž”αž„αŸ’αž αžΆαž‰αž’αŸ’αž“αž€αž–αžΈαžšαž”αŸ€αž”αž”αŸ’αžšαŸ€αž”αž’αŸ€αž”αž‘αž·αž“αŸ’αž“αž“αŸαž™αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž”αžΈαž”αŸ’αžšαž—αŸαž‘αž•αŸ’αžŸαŸαž„αž‚αŸ’αž“αžΆ (JBoss EAP, JAR package αž“αž·αž„αž’αžΆαž…αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž”αžΆαž“) αžŠαŸ„αž™αž”αŸ’αžšαž˜αžΌαž›αž‘αž·αž“αŸ’αž“αž“αŸαž™αž“αŸ…αž›αžΎ Linux αžŠαŸ„αž™αž”αŸ’αžšαžΎαž§αž”αž€αžšαžŽαŸαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ pmap αž“αž·αž„ ps αŸ”

JBoss EAP

αž™αžΎαž„αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒαž€αž˜αŸ’αž˜αžœαž·αž’αžΈ JBoss EAP (αžŸαžΌαž˜αž˜αžΎαž›αž•αŸ’αž“αŸ‚αž€ "αž€αžΆαžšαžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™ helloworld" αž“αŸ…αž€αŸ’αž“αž»αž„ αž”αŸ’αžšαž€αžΆαžŸαž˜αž»αž“αŸ”) αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αžšαž€αž˜αžΎαž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš PID αžšαž”αžŸαŸ‹αžœαžΆ (αž€αŸ’αž“αž»αž„αž§αž‘αžΆαž αžšαžŽαŸαžšαž”αžŸαŸ‹αž™αžΎαž„αžœαžΆαž‚αžΊ 7268) αžŠαŸ„αž™αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

$ pgrep -lf jboss
7268 java

αž…αŸ†αžŽαžΆαŸ†: αž‡αž˜αŸ’αžšαžΎαžŸ -a αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž‘αžΆαž‰αž™αž€αž”αž“αŸ’αž‘αžΆαžαŸ‹αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž–αŸαž‰αž›αŸαž‰ (αž§αž‘αžΆαž αžšαžŽαŸ: $ pgrep -af jboss) αŸ”

αž₯αž‘αžΌαžœαž“αŸαŸ‡αž™αžΎαž„αž”αŸ’αžšαžΎ PID 7268 αž“αŸ…αž€αŸ’αž“αž»αž„αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ ps αž“αž·αž„ pmap αŸ”

αž“αŸ…αž‘αžΈαž“αŸαŸ‡:

$ 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

αž αžΎαž™αžŠαžΌαž…αž“αŸαŸ‡αŸ–

$ 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

αž™αžΎαž„αž˜αžΎαž›αžαž˜αŸ’αž›αŸƒ RSS αž αžΎαž™αžƒαžΎαž‰αžαžΆ JBoss EAP αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž”αŸ’αžšαž αŸ‚αž› 650 MB αŸ”

αž€αž‰αŸ’αž…αž”αŸ‹ JAR

αž™αžΎαž„αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈ JAR (αžŸαžΌαž˜αž˜αžΎαž›αž•αŸ’αž“αŸ‚αž€ "αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš helloworld packed in JAR" αž“αŸ…αž€αŸ’αž“αž»αž„ αž”αŸ’αžšαž€αžΆαžŸαž˜αž»αž“αŸ”):

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

αž™αžΎαž„αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž› PID αž˜αŸ’αžαž„αž‘αŸ€αžαžŠαŸ„αž™αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ pgrep (αž›αžΎαž€αž“αŸαŸ‡αž™αžΎαž„αž”αŸ’αžšαžΎαž‡αž˜αŸ’αžšαžΎαžŸ -a αžŠαŸ‚αž›αž”αžΆαž“αž–αž·αž–αžŽαŸŒαž“αžΆαžαžΆαž„αž›αžΎ)αŸ–

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

αž™αžΎαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš ps αž“αž·αž„ pmap αžŠαžΎαž˜αŸ’αž”αžΈαžœαžΆαžŸαŸ‹αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ† αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž₯αž‘αžΌαžœαž“αŸαŸ‡αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš 6408 αŸ”

αž“αŸ…αž‘αžΈαž“αŸαŸ‡:

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

αž αžΎαž™αžŠαžΌαž…αž“αŸαŸ‡αŸ–

$ 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

αž™αžΎαž„αž˜αžΎαž› RSS αž˜αŸ’αžαž„αž‘αŸ€αž αž αžΎαž™αžƒαžΎαž‰αžαžΆαž€αž‰αŸ’αž…αž”αŸ‹ JAR αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž”αŸ’αžšαž αŸ‚αž› 130 MBαŸ”

αž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž’αžΆαž…αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž”αžΆαž“αŸ”

αž™αžΎαž„αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž―αž€αžŸαžΆαžšαžŠαžΎαž˜ (αžŸαžΌαž˜αž˜αžΎαž›αž•αŸ’αž“αŸ‚αž€ "αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž’αžΆαž…αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž”αžΆαž“ helloworld ដើម" αž“αŸ…αž€αŸ’αž“αž»αž„ αž”αŸ’αžšαž€αžΆαžŸαž˜αž»αž“αŸ”):

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

αžαŸ„αŸ‡αž˜αžΎαž› PID αžšαž”αžŸαŸ‹αžœαžΆαž˜αŸ’αžαž„αž‘αŸ€αžαŸ–

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

αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž™αžΎαž„αž”αŸ’αžšαžΎαž›αŸαžαžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž›αž‘αŸ’αž’αž•αž› (6948) αž“αŸ…αž€αŸ’αž“αž»αž„αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ ps αž“αž·αž„ pmap αŸ”

αž“αŸ…αž‘αžΈαž“αŸαŸ‡:

$ 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

αž™αžΎαž„αž˜αžΎαž› RSS αž αžΎαž™αžƒαžΎαž‰αžαžΆαž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž’αžΆαž…αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž”αžΆαž“αž™αž€αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž”αŸ’αžšαž αŸ‚αž› 20 MB αŸ”

αž€αžΆαžšαž”αŸ’αžšαŸ€αž”αž’αŸ€αž”αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†

αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž™αžΎαž„αž‘αž‘αž½αž›αž”αžΆαž“αž›αŸαžαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αŸ–

  • JBoss EAP - 650 αž˜αŸαž€αžΆαž”αŸƒαŸ”
  • αž€αž‰αŸ’αž…αž”αŸ‹ JAR - 130 MB αŸ”
  • αž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž’αžΆαž…αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž”αžΆαž“ - 20 MB αŸ”

αž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„ αž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž’αžΆαž…αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž”αžΆαž“αž™αž€αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αžαž·αž…αž‡αžΆαž„αž…αŸ’αžšαžΎαž“αŸ”

αž…αžΌαžšαž™αžΎαž„αžŸαž„αŸ’αžαŸαž”αž’αžαŸ’αžαž”αž‘αž‘αžΈ 4 αž“αž·αž„ 5

αž“αŸ…αž€αŸ’αž“αž»αž„αž’αžαŸ’αžαž”αž‘αž“αŸαŸ‡ αž“αž·αž„αž’αžαŸ’αžαž”αž‘αž˜αž»αž“ αž™αžΎαž„αž”αžΆαž“αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž€αžΆαžšαž’αŸ’αžœαžΎαž‘αŸ†αž“αžΎαž”αž€αž˜αŸ’αž˜αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ Java αžŠαŸ„αž™αž”αŸ’αžšαžΎαž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαžŠαŸ‚αž›αž‚αžΆαŸ†αž‘αŸ’αžšαž“αŸ…αž€αŸ’αž“αž»αž„ Quarkus (CDI αž“αž·αž„ Servlet 3) αž€αŸαžŠαžΌαž…αž‡αžΆαžœαž·αž’αžΈαž•αŸ’αžŸαŸαž„αŸ—αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸ αž”αž„αŸ’αž€αžΎαž αž“αž·αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž”αŸ‚αž”αž“αŸαŸ‡αŸ” αž™αžΎαž„αž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αž–αžΈαžšαž”αŸ€αž”αž”αŸ’αžšαž˜αžΌαž›αž‘αž·αž“αŸ’αž“αž“αŸαž™αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ† αžŠαžΎαž˜αŸ’αž”αžΈαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž€αžΆαžšαž€αŸ‚αž›αž˜αŸ’αž’αžŠαŸ‚αž›αžŸαž˜αŸ’αžšαŸαž…αž”αžΆαž“αžŠαŸ„αž™αž€αžΆαžšαž’αŸ’αžœαžΎαž±αŸ’αž™αž”αŸ’αžšαžŸαžΎαžšαž”αŸ‚αž”αž“αŸαŸ‡αŸ” αž’αžαŸ’αžαž”αž‘αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‡αž½αž™αž’αŸ’αž“αž€αž±αŸ’αž™αž™αž›αŸ‹αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž› Quarkus αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αžœαžΆαž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸ - αž˜αž·αž“αžαžΆαž’αŸ’αž“αž€αž€αŸ†αž–αž»αž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž€αž˜αŸ’αž˜αžœαž·αž’αžΈ helloworld αžŸαžΆαž˜αž‰αŸ’αž‰αž€αŸ’αž“αž»αž„αž§αž‘αžΆαž αžšαžŽαŸαžšαž”αžŸαŸ‹αž™αžΎαž„ αž¬αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αžΈαžœαž·αžαž–αž·αžαžŠαŸ‚αž›αžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αž‡αžΆαž„αž“αŸαŸ‡αž‘αŸαŸ”

αž™αžΎαž„αž“αžΉαž„αžαŸ’αžšαž›αž”αŸ‹αž˜αž€αžœαž·αž‰αž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αž–αžΈαžšαžŸαž”αŸ’αžαžΆαž αŸαž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž”αŸ’αžšαž€αžΆαžŸαž…αž»αž„αž€αŸ’αžšαŸ„αž™αž’αŸ†αž–αžΈ Quarkus - αž‡αž½αž”αž‚αŸ’αž“αžΆαž“αŸ…αž‘αžΈαž“αŸ„αŸ‡!

αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ’αžšαž€αžΆαžŸαž…αž»αž„αž€αŸ’αžšαŸ„αž™αžšαž”αžŸαŸ‹αž™αžΎαž„ αž™αžΎαž„αž“αžΉαž„αž”αž„αŸ’αž αžΆαž‰αž–αžΈαžšαž”αŸ€αž”αž”αž‰αŸ’αž…αžΌαž›αž‚αŸ’αž“αžΆαž“αžΌαžœ AMQ Online αž“αž·αž„ Quarkus αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαžαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž•αŸ’αž‰αžΎαžŸαžΆαžšαžŠαŸ‚αž›αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž›αžΎ OpenShift αžŠαŸαž‘αŸ†αž“αžΎαž”αžŠαŸ„αž™αž”αŸ’αžšαžΎαž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαž•αŸ’αž‰αžΎαžŸαžΆαžšαžαŸ’αž˜αžΈαž–αžΈαžšαŸ” αž’αžΆαž“αž”αž“αŸ’αž αžαŸ†αžŽαž—αŸ’αž‡αžΆαž”αŸ‹.

αž”αŸ’αžšαž—αž–: www.habr.com

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹