Quarkus: ΠœΠΎΠ΄Π΅Ρ€Π½ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° прилоТСния с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Helloworld ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΡ‚ JBoss EAP Quickstart (ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ΅Π½ΠΈΠ΅)

Π—Π΄Ρ€Π°Π²Π΅ΠΉΡ‚Π΅ Π½Π° всички – Ρ‚ΠΎΠ²Π° Π΅ ΠΏΠ΅Ρ‚Π°Ρ‚Π° публикация ΠΎΡ‚ Π½Π°ΡˆΠ°Ρ‚Π° сСрия Quarkus! (ΠœΠ΅ΠΆΠ΄Ρƒ Π΄Ρ€ΡƒΠ³ΠΎΡ‚ΠΎ, Π³Π»Π΅Π΄Π°ΠΉΡ‚Π΅ нашия ΡƒΠ΅Π±ΠΈΠ½Π°Ρ€ β€žΠ’ΠΎΠ²Π° Π΅ Quarkus – Ρ€ΠΎΠ΄Π½Π°Ρ‚Π° Java Ρ€Π°ΠΌΠΊΠ° Π½Π° Kubernetesβ€œ. Π©Π΅ Π²ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ ΠΎΡ‚ Π½ΡƒΠ»Π°Ρ‚Π° ΠΈΠ»ΠΈ Π΄Π° ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΠΈΡ‚Π΅ Π³ΠΎΡ‚ΠΎΠ²ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ)

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 ΠΏΠ°ΠΊΠ΅Ρ‚ ΠΈ изпълним Ρ„Π°ΠΉΠ»), ΠΊΠ°Ρ‚ΠΎ ΡΡŠΠ±ΠΈΡ€Π°Ρ‚Π΅ Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π² 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, ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ€Π°Π½ Π² 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

Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ получСния ID Π½Π° процСса (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 MB.
  • JAR ΠΏΠ°ΠΊΠ΅Ρ‚ – 130 MB.
  • Изпълним Ρ„Π°ΠΉΠ» – 20 MB.

ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ·ΠΏΡŠΠ»Π½ΠΈΠΌΠΈΡΡ‚ Ρ„Π°ΠΉΠ» Π·Π°Π΅ΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΏΠ°ΠΌΠ΅Ρ‚.

НСка ΠΎΠ±ΠΎΠ±Ρ‰ΠΈΠΌ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ 4 ΠΈ 5

Π’ Ρ‚Π°Π·ΠΈ ΠΈ ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½ΠΈΡ‚Π΅ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Ρ€Π°Π·Π³Π»Π΅Π΄Π°Ρ…ΠΌΠ΅ ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈΠ·ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Java прилоТСния с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Π½ΠΈ Π² Quarkus (CDI ΠΈ Servlet 3), ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π½Π°Ρ‡ΠΈΠ½ΠΈ Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅, ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ ΠΈ стартиранС Π½Π° Ρ‚Π°ΠΊΠΈΠ²Π° прилоТСния. ΠŸΠΎΠΊΠ°Π·Π°Ρ…ΠΌΠ΅ ΠΊΠ°ΠΊ Π΄Π° ΡΡŠΠ±ΠΈΡ€Π°ΠΌΠ΅ Π΄Π°Π½Π½ΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°, Π·Π° Π΄Π° ΠΎΡ†Π΅Π½ΠΈΠΌ подобрСнията, постигнати ΠΎΡ‚ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π½Π°Π΄Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅. Π’Π΅Π·ΠΈ статии Π²ΠΈ ΠΏΠΎΠΌΠ°Π³Π°Ρ‚ Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚ΠΈ Quarkus ΠΈ Π·Π°Ρ‰ΠΎ Π΅ ΠΏΠΎΠ»Π΅Π·Π΅Π½ - нСзависимо Π΄Π°Π»ΠΈ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚Π΅ Π·Π° простата ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° helloworld Π² Π½Π°ΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΈ ΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-слоТни прилоТСния ΠΎΡ‚ рСалния ΠΆΠΈΠ²ΠΎΡ‚.

Π©Π΅ сС Π²ΡŠΡ€Π½Π΅ΠΌ слСд Π΄Π²Π΅ сСдмици с послСдна публикация Π·Π° Quarkus - Ρ‰Π΅ сС Π²ΠΈΠ΄ΠΈΠΌ Ρ‚Π°ΠΌ!

Π’ Π½Π°ΡˆΠ°Ρ‚Π° послСдна публикация Ρ‰Π΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ Π΄Π° ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€Π°ΠΌΠ΅ AMQ Online ΠΈ Quarkus, Π·Π° Π΄Π° ΠΈΠ·Π³Ρ€Π°Π΄ΠΈΠΌ ΠΌΠΎΠ΄Π΅Ρ€Π½Π° систСма Π·Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ, Π±Π°Π·ΠΈΡ€Π°Π½Π° Π½Π° OpenShift, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ Π΄Π²Π΅ Π½ΠΎΠ²ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π·Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ. ΠŸΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ Π²Ρ€ΡŠΠ·ΠΊΠ°.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: www.habr.com

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€