ΠΠ΄ΡΠ°Π²Π΅ΠΉΡΠ΅ Π½Π° Π²ΡΠΈΡΠΊΠΈ β ΡΠΎΠ²Π° Π΅ ΠΏΠ΅ΡΠΈΡΡ ΠΏΠΎΡΡ ΠΎΡ Π½Π°ΡΠ°ΡΠ° ΡΠ΅ΡΠΈΡ Π·Π° Quarkus! (ΠΠ΅ΠΆΠ΄Ρ Π΄ΡΡΠ³ΠΎΡΠΎ, Π³Π»Π΅Π΄Π°ΠΉΡΠ΅ Π½Π°ΡΠΈΡ ΡΠ΅Π±ΠΈΠ½Π°Ρ . Π©Π΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ΡΠ΅ Β«ΠΎΡ Π½ΡΠ»Π°ΡΠ°Β» ΠΈΠ»ΠΈ Π΄Π° ΠΏΡΠ΅Ρ Π²ΡΡΠ»ΠΈΡΠ΅ Π³ΠΎΡΠΎΠ²ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ)

Π ΡΠ°Π·Π³Π»Π΅Π΄Π°Ρ
ΠΌΠ΅ ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΠ·Π°ΡΠΈΡΡΠ° Π½Π° Java ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ΠΈΡΠ΅ ΠΎΡ Quarkus ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ (CDI ΠΈ Servlet 3) Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ° Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° helloworld ΠΎΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ . ΠΠ½Π΅Ρ ΡΠ΅ ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠΈΠΌ ΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΠ·Π°ΡΠΈΡ ΠΈ ΡΠ΅ ΠΎΠ±ΡΡΠ΄ΠΈΠΌ Π²ΡΠΏΡΠΎΡΠ° Π·Π° ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ.
ΠΠ·ΠΌΠ΅ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π΅ ΠΎΡΠ½ΠΎΠ²Π½Π° ΠΎΡΠ½ΠΎΠ²Π° Π·Π° ΠΏΠΎΡΡΠΈ Π²ΡΡΠΊΠ° ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΠ·Π°ΡΠΈΡ, Π° ΠΎΡΡΠ΅ΡΠΈΡΠ΅ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ° ΡΠ° Π²Π°ΠΆΠ½Π° ΡΠ°ΡΡ ΠΎΡ ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° Π°Π½Π°Π»ΠΈΠ· Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ°. ΠΠ½Π΅Ρ ΡΠ΅ ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΡΡΠΎΡΠ²Π΅ΡΠ½ΠΈΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΠΈΠ·ΠΌΠ΅ΡΠ²Π°Π½Π΅, Ρ ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠΆΠ΅ΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅Π½ΠΎ Π΄Π° ΠΎΡΠ΅Π½ΠΈΠΌ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡΡΠ°, ΠΏΠΎΡΡΠΈΠ³Π½Π°ΡΠΈ Π² ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΠ·Π°ΡΠΈΡ Π½Π° Java ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ Π·Π° ΠΈΠ·ΠΌΠ΅ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π½Π°ΠΌΠ΅ΡΠΈΡΠ΅ Π² ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΡΠΎ Π½Π° Quarkus, ΠΎΠ·Π°Π³Π»Π°Π²Π΅Π½ΠΎ
Π ΠΏΠΎ-Π΄ΠΎΠ»Ρ ΠΏΡΠΎΡΡΠΎ ΡΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ Π΄Π° ΡΡΠ°Π²Π½ΠΈΠΌ Π΄Π°Π½Π½ΠΈΡΠ΅ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ° Ρ ΡΡΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠΈΠΏΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (JBoss EAP, JAR ΠΏΠ°ΠΊΠ΅Ρ ΠΈ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌ ΡΠ°ΠΉΠ»), ΠΊΠ°ΡΠΎ ΡΡΠ±ΠΈΡΠ°ΠΌΠ΅ ΡΠ΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π² 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 ΠΠ ΠΏΠ°ΠΌΠ΅Ρ.
JAR ΠΏΠ°ΠΊΠ΅Ρ
Π‘ΡΠ°ΡΡΠΈΡΠ°ΠΌΠ΅ JAR ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (Π²ΠΈΠΆΡΠ΅ ΡΠ°Π·Π΄Π΅Π» "Π‘ΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° helloworld Π² 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 ΠΠ.
ΠΠ·ΠΏΡΠ»Π½ΠΈΠΌ ΡΠ°ΠΉΠ»
Π‘ΡΠ°ΡΡΠΈΡΠ°ΠΌΠ΅ Π½Π°ΡΠΈΠ²Π½ΠΈΡ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌ ΡΠ°ΠΉΠ» (Π²ΠΈΠΆΡΠ΅ ΡΠ°Π·Π΄Π΅Π» "Π‘ΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π½Π°ΡΠΈΠ²Π½ΠΈΡ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌ ΡΠ°ΠΉΠ» 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 ΠΠ ΠΏΠ°ΠΌΠ΅Ρ.
Π‘ΡΠ°Π²Π½ΡΠ²Π°ΠΌΠ΅ ΠΊΠΎΠ½ΡΡΠΌΠ°ΡΠΈΡΡΠ° Π½Π° ΠΏΠ°ΠΌΠ΅Ρ
Π ΡΠ°ΠΊΠ°, ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΠΌΠ΅ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΡΠΈΡΠ»Π° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°:
- JBoss EAP β 650 MB.
- JAR ΠΏΠ°ΠΊΠ΅Ρ β 130 MB.
- ΠΠ·ΠΏΡΠ»Π½ΠΈΠΌ ΡΠ°ΠΉΠ» β 20 MB.
ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ Π΅, ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌΠΈΡΡ ΡΠ°ΠΉΠ» Π·Π°Π΅ΠΌΠ° Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΏΠ°ΠΌΠ΅Ρ.
ΠΠΎΠ΄Π²Π΅ΠΆΠ΄Π°ΠΌΠ΅ Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΠΏΠΎΡΡΠΎΠ²Π΅ 4 ΠΈ 5
Π ΡΠΎΠ·ΠΈ ΠΈ ΠΏΡΠ΅Π΄ΠΈΡΠ½ΠΈΡ ΠΏΠΎΡΡ ΡΠ°Π·Π³Π»Π΅Π΄Π°Ρ ΠΌΠ΅ ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΠ·Π°ΡΠΈΡΡΠ° Π½Π° Java ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈΡΠ΅, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ΠΈ ΠΎΡ Quarkus (CDI ΠΈ Servlet 3), ΠΊΠ°ΠΊΡΠΎ ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅ ΠΈ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°ΠΊΠΈΠ²Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΠΊΠ°Π·Π°Ρ ΠΌΠ΅ ΠΊΠ°ΠΊ Π΄Π° ΡΡΠ±ΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°, Π·Π° Π΄Π° ΠΎΡΠ΅Π½ΠΈΠΌ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡΡΠ°, ΠΏΠΎΡΡΠΈΠ³Π½Π°ΡΠΈ Π² ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠ°Π·ΠΈ ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΠ·Π°ΡΠΈΡ. Π’Π΅Π·ΠΈ ΡΡΠ°ΡΠΈΠΈ ΠΏΠΎΠΌΠ°Π³Π°Ρ Π·Π° ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° Quarkus ΠΈ ΠΊΠ°ΠΊΠ²Π° Π΅ Π½Π΅Π³ΠΎΠ²Π°ΡΠ° ΠΏΠΎΠ»Π·Π° β Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ Π΄Π°Π»ΠΈ ΡΡΠ°Π²Π° Π²ΡΠΏΡΠΎΡ Π·Π° ΠΏΡΠΎΡΡΠΈΡ helloworld ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΠ»ΠΈ Π·Π° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-ΡΠ»ΠΎΠΆΠ½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΡ ΡΠ΅Π°Π»Π½ΠΈΡ ΠΆΠΈΠ²ΠΎΡ.
Π©Π΅ ΡΠ΅ Π²ΡΡΠ½Π΅ΠΌ ΡΠ»Π΅Π΄ Π΄Π²Π΅ ΡΠ΅Π΄ΠΌΠΈΡΠΈ Ρ ΡΠΈΠ½Π°Π»Π½ΠΈΡ ΠΏΠΎΡΡ Π·Π° Quarkus β Π΄ΠΎ ΡΠΊΠΎΡΠΎ!
Π Π½Π°ΡΠΈΡ ΡΠΈΠ½Π°Π»Π΅Π½ ΠΏΠΎΡΡ ΡΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ Π΄Π° ΠΎΠ±Π΅Π΄ΠΈΠ½ΠΈΠΌ AMQ Online ΠΈ Quarkus, Π·Π° Π΄Π° ΠΈΠ·Π³ΡΠ°Π΄ΠΈΠΌ ΠΌΠΎΠ΄Π΅ΡΠ½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΠΎΠ±ΠΌΠ΅Π½ Π½Π° ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° OpenShift, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ Π΄Π²Π΅ Π½ΠΎΠ²ΠΈ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ. Π§Π΅ΡΠ΅ΡΠ΅ ΠΏΠΎ .
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: habr.com
