Как Quarkus ΡΡŠΡ‡Π΅Ρ‚Π°Π²Π° ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ ΠΈ Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅

Π’Π°Π·ΠΈ Π³ΠΎΠ΄ΠΈΠ½Π° ΠΏΠ»Π°Π½ΠΈΡ€Π°ΠΌΠ΅ сСриозно Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΈΠΌ Ρ‚Π΅ΠΌΠΈ Π·Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ, ΠžΠ±Π»Π°Ρ‡Π½Π° Java ΠΈ Kubernetes. Π›ΠΎΠ³ΠΈΡ‡Π½ΠΎ ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Ρ‚Π΅Π·ΠΈ Ρ‚Π΅ΠΌΠΈ Ρ‰Π΅ бъдС Π²Π΅Ρ‡Π΅ Π΅Π΄Π½Π° история Π·Π° Ρ€Π°ΠΌΠΊΠ°Ρ‚Π° Quarkus Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°Π½ Π½Π° Π₯Π°Π±Ρ€Π΅. Π”Π½Π΅ΡˆΠ½Π°Ρ‚Π° статия Π΅ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ Π·Π° Π΄ΠΈΠ·Π°ΠΉΠ½Π° Π½Π° β€žΡΡƒΠ±Π°Ρ‚ΠΎΠΌΠ½Π°Ρ‚Π° ΡΡƒΠΏΠ΅Ρ€Π±ΡŠΡ€Π·Π° Javaβ€œ ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π·Π° ΠΎΠ±Π΅Ρ‰Π°Π½ΠΈΠ΅Ρ‚ΠΎ, ΠΊΠΎΠ΅Ρ‚ΠΎ Quarkus носи Π½Π° Enterprise.

Как Quarkus ΡΡŠΡ‡Π΅Ρ‚Π°Π²Π° ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ ΠΈ Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅

Java ΠΈ JVM всС ΠΎΡ‰Π΅ са ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ популярни, Π½ΠΎ ΠΊΠΎΠ³Π°Ρ‚ΠΎ сС Ρ€Π°Π±ΠΎΡ‚ΠΈ с Π±Π΅Π·ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈ ΠΎΠ±Π»Π°Ρ‡Π½ΠΈ микроуслуги, Java ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ JVM Π΅Π·ΠΈΡ†ΠΈ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ всС ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Π·Π°Π΅ΠΌΠ°Ρ‚ Ρ‚Π²ΡŠΡ€Π΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ място Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° ΠΈ са Ρ‚Π²ΡŠΡ€Π΄Π΅ Π±Π°Π²Π½ΠΈ Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅, ΠΊΠΎΠ΅Ρ‚ΠΎ Π³ΠΈ ΠΏΡ€Π°Π²ΠΈ Π½Π΅ Π΅ подходящ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ с ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ с ΠΊΡ€Π°Ρ‚ΡŠΠΊ ΠΆΠΈΠ²ΠΎΡ‚. Π—Π° щастиС Ρ‚Π°Π·ΠΈ ситуация сСга Π·Π°ΠΏΠΎΡ‡Π²Π° Π΄Π° сС промСня Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° Quarkus.

Π‘ΡƒΠΏΠ΅Ρ€Π±ΡŠΡ€Π·Π°Ρ‚Π° субатомна Java достигна Π½ΠΎΠ²ΠΎ Π½ΠΈΠ²ΠΎ!

42 издания, 8 мСсСца Ρ€Π°Π±ΠΎΡ‚Π° Π² общността ΠΈ 177 нСвСроятни Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ - Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΡŠΡ‚ ΠΎΡ‚ всичко Ρ‚ΠΎΠ²Π° бСшС ΠΈΠ·Π΄Π°Π½ΠΈΠ΅Ρ‚ΠΎ ΠΏΡ€Π΅Π· Π½ΠΎΠ΅ΠΌΠ²Ρ€ΠΈ 2019 Π³. ΠšΠ²Π°Ρ€ΠΊΡƒΡ 1.0, вСрсия, която Π±Π΅Π»Π΅ΠΆΠΈ Π²Π°ΠΆΠ΅Π½ ΠΊΡ€Π°ΠΉΡŠΠ³ΡŠΠ»Π΅Π½ камък Π² Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π° ΠΌΠ½ΠΎΠ³ΠΎ страхотни Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ (ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π·Π° тях Π² ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅).

ДнСс Ρ‰Π΅ Π²ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ Quarkus ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€Π° ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΈ ΠΈ Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ Π² Π΅Π΄Π½ΠΎ Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ядро. Π©Π΅ Π·Π°ΠΏΠΎΡ‡Π½Π΅ΠΌ с ΠΊΡ€Π°Ρ‚ΠΊΠ° история ΠΈ слСд Ρ‚ΠΎΠ²Π° Ρ‰Π΅ Π½Π°Π²Π»Π΅Π·Π΅ΠΌ Π² подробности Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊΠ²ΠΎ прСдставлява Π΄ΡƒΠ°Π»ΠΈΠ·ΠΌΡŠΡ‚ Π½Π° Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡ‚ΠΎ ядро ​​на Quarkus ΠΈ ΠΊΠ°ΠΊ Π―Π²Π°-Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС Π²ΡŠΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΎΡ‚ Ρ‚Π΅Π·ΠΈ прСдимства.

ΠœΠΈΠΊΡ€ΠΎΡƒΡΠ»ΡƒΠ³ΠΈ, управлявани ΠΎΡ‚ ΡΡŠΠ±ΠΈΡ‚ΠΈΡ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ ΠΈ Π±Π΅Π· ΡΡŠΡ€Π²ΡŠΡ€-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ – всичко Ρ‚ΠΎΠ²Π° днСс Π΅, ΠΊΠ°ΠΊΡ‚ΠΎ сС ΠΊΠ°Π·Π²Π°, във Π²ΡŠΠ·Ρ…ΠΎΠ΄. НапослСдък ΡΡŠΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ΠΈ към ΠΎΠ±Π»Π°ΠΊΠ° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ стана ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-лСсно ΠΈ ΠΏΠΎ-Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎ, Π½ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈΡ‚Π΅ остават - особСно Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° Java. НапримСр, Π² случай Π½Π° Π±Π΅Π·ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ микроуслуги, ΠΈΠΌΠ° спСшна Π½ΡƒΠΆΠ΄Π° Π΄Π° сС Π½Π°ΠΌΠ°Π»ΠΈ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° стартиранС, Π΄Π° сС Π½Π°ΠΌΠ°Π»ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚ ΠΈ Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π° Π΄Π° сС Π½Π°ΠΏΡ€Π°Π²ΠΈ тяхното Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅ ΠΏΠΎ-ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈ приятно. Java Π½Π°ΠΏΡ€Π°Π²ΠΈ няколко подобрСния ΠΏΡ€Π΅Π· послСднитС Π³ΠΎΠ΄ΠΈΠ½ΠΈ, ΠΊΠ°Ρ‚ΠΎ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π° Π΅Ρ€Π³ΠΎΠ½ΠΎΠΌΠΈΡ‡Π½Π° функционалност Π·Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ ΠΈ Ρ‚.Π½. ВсС ΠΎΡ‰Π΅ ΠΎΠ±Π°Ρ‡Π΅ Π΅ прСдизвикатСлство Π΄Π° Π½Π°ΠΊΠ°Ρ€Π°Ρ‚Π΅ Java Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€. Π’Π°ΠΊΠ° Ρ‡Π΅ Ρ‰Π΅ Π·Π°ΠΏΠΎΡ‡Π½Π΅ΠΌ с Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° някои ΠΎΡ‚ ΠΏΡ€ΠΈΡΡŠΡ‰ΠΈΡ‚Π΅ слоТности Π½Π° Java, ΠΊΠΎΠΈΡ‚ΠΎ са особСно остри ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Java прилоТСния, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ΠΈ към ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ.

ΠŸΡŠΡ€Π²ΠΎ, Π½Π΅ΠΊΠ° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌ Π² историята.

Как Quarkus ΡΡŠΡ‡Π΅Ρ‚Π°Π²Π° ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ ΠΈ Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅

ΠŸΠΎΡ‚ΠΎΡ†ΠΈ ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ

Π—Π°ΠΏΠΎΡ‡Π²Π°ΠΉΠΊΠΈ с вСрсия 8u131, Java Π·Π°ΠΏΠΎΡ‡Π½Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΈΠ»ΠΈ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ Π΄Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ ΠΏΠΎΡ€Π°Π΄ΠΈ подобрСния Π² Π΅Ρ€Π³ΠΎΠ½ΠΎΠΌΠΈΡ‡Π½Π°Ρ‚Π° функционалност. По-спСциално, JVM Π²Π΅Ρ‡Π΅ Π·Π½Π°Π΅ Π½Π° ΠΊΠΎΠ»ΠΊΠΎ процСсорни ядра Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΈ ΠΌΠΎΠΆΠ΅ ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ Π΄Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π° ΠΏΡƒΠ»ΠΎΠ²Π΅ ΠΎΡ‚ нишки – ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΠΏΡƒΠ»ΠΎΠ²Π΅ Π·Π° Ρ€Π°Π·ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅/ΠΏΡ€ΠΈΡΡŠΠ΅Π΄ΠΈΠ½ΡΠ²Π°Π½Π΅. Π Π°Π·Π±ΠΈΡ€Π° сС, Ρ‚ΠΎΠ²Π° Π΅ страхотно, Π½ΠΎ Π΄Π° ΠΊΠ°ΠΆΠ΅ΠΌ, Ρ‡Π΅ ΠΈΠΌΠ°ΠΌΠ΅ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ ΡƒΠ΅Π± ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° HTTP ΡΡŠΡ€Π²Π»Π΅Ρ‚ΠΈ ΠΈ Ρ€Π°Π±ΠΎΡ‚ΠΈ Π² Tomcat, Jetty ΠΈ Ρ‚.Π½. Π’ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ²Π° Ρ‚ΠΎΠ²Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ‰Π΅ Π΄Π°Π΄Π΅ Π½Π° всяка заявка ΠΎΡ‚Π΄Π΅Π»Π½Π° нишка ΠΈ Ρ‰Π΅ ΠΌΡƒ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ Π΄Π° Π±Π»ΠΎΠΊΠΈΡ€Π° Ρ‚Π°Π·ΠΈ нишка, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ Ρ‡Π°ΠΊΠ° I/O ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΈ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ услуги. ВоСст Ρ€Π°Π·ΠΌΠ΅Ρ€ΡŠΡ‚ Π½Π° Ρ‚Π°ΠΊΠΎΠ²Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ зависи ΠΎΡ‚ броя Π½Π° Π½Π°Π»ΠΈΡ‡Π½ΠΈΡ‚Π΅ ядра, Π° ΠΎΡ‚ броя Π½Π° Π΅Π΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈΡ‚Π΅ заявки. Π’ допълнСниС, Ρ‚ΠΎΠ²Π° ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ ΠΊΠ²ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΠ»ΠΈ ограничСнията Π² Kubernetes Π·Π° броя Π½Π° ядрата няма Π΄Π° са ΠΎΡ‚ голяма ΠΏΠΎΠ»Π·Π° Ρ‚ΡƒΠΊ ΠΈ Π²ΡŠΠΏΡ€ΠΎΡΡŠΡ‚ Π² ΠΊΡ€Π°ΠΉΠ½Π° смСтка Ρ‰Π΅ Π·Π°Π²ΡŠΡ€ΡˆΠΈ с дросСлиранС.

Π˜Π·Ρ‡Π΅Ρ€ΠΏΠ²Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°

ΠΠΈΡˆΠΊΠΈΡ‚Π΅ са ΠΏΠ°ΠΌΠ΅Ρ‚. И Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½ΠΎΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π½ΠΈΡ‚Π΅ ограничСния Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π² никакъв случай Π½Π΅ са панацСя. ΠŸΡ€ΠΎΡΡ‚ΠΎ Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ Π΄Π° ΡƒΠ²Π΅Π»ΠΈΡ‡Π°Π²Π°Ρ‚Π΅ броя Π½Π° прилоТСнията ΠΈ Π½ΠΈΡˆΠΊΠΈΡ‚Π΅ ΠΈ Ρ€Π°Π½ΠΎ ΠΈΠ»ΠΈ късно Ρ‰Π΅ срСщнСтС ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° чСстотата Π½Π° ΠΏΡ€Π΅Π²ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅ ΠΈ Π² Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ²Π° влошаванС Π½Π° производитСлността. ОсвСн Ρ‚ΠΎΠ²Π°, Π°ΠΊΠΎ Π²Π°ΡˆΠ΅Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΈ Ρ€Π°ΠΌΠΊΠΈ Π·Π° микросСрвизи ΠΈΠ»ΠΈ сС ΡΠ²ΡŠΡ€Π·Π²Π° с Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, ΠΈΠ»ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ΅ΡˆΠΈΡ€Π°Π½Π΅, ΠΈΠ»ΠΈ ΠΏΠΎ Π΄Ρ€ΡƒΠ³ Π½Π°Ρ‡ΠΈΠ½ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠ°ΠΌΠ΅Ρ‚, ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ ΠΈΠΌΠ°Ρ‚Π΅ Π½ΡƒΠΆΠ΄Π° ΠΎΡ‚ инструмСнт, ΠΊΠΎΠΉΡ‚ΠΎ Π²ΠΈ позволява Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅Ρ‚Π΅ Π²ΡŠΡ‚Ρ€Π΅ Π² JVM ΠΈ Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΊΠ°ΠΊ управлява ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°, Π±Π΅Π· Π΄Π° я ΡƒΠ±ΠΈΠ²Π°. Π‘Π°ΠΌΠ°Ρ‚Π° JVM (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ XX:+UseCGroupMemoryLimitForHeap). И Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‡Π΅ слСд Java 9 JVM сС Π½Π°ΡƒΡ‡ΠΈ Π΄Π° ΠΏΡ€ΠΈΠ΅ΠΌΠ° cgroups ΠΈ Π΄Π° сС Π°Π΄Π°ΠΏΡ‚ΠΈΡ€Π° ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ, Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° остава доста слоТСн Π²ΡŠΠΏΡ€ΠΎΡ.

ΠšΠ²ΠΎΡ‚ΠΈ ΠΈ Π»ΠΈΠΌΠΈΡ‚ΠΈ

Java 11 въвСдС ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΊΠ²ΠΎΡ‚ΠΈ Π½Π° процСсора (ΠΊΠ°Ρ‚ΠΎ PreferContainerQuotaForCPUCount). Kubernetes ΡΡŠΡ‰ΠΎ ΠΏΡ€Π΅Π΄Π»Π°Π³Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ограничСния ΠΈ ΠΊΠ²ΠΎΡ‚ΠΈ. Π”Π°, всичко Ρ‚ΠΎΠ²Π° ΠΈΠΌΠ° смисъл, Π½ΠΎ Π°ΠΊΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΎΡ‚Π½ΠΎΠ²ΠΎ Π½Π°Π΄Ρ…Π²ΡŠΡ€Π»ΠΈ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π°Ρ‚Π° ΠΊΠ²ΠΎΡ‚Π°, ΠΎΡ‚Π½ΠΎΠ²ΠΎ сС ΠΎΠΊΠ°Π·Π²Π°ΠΌΠ΅ с Ρ€Π°Π·ΠΌΠ΅Ρ€Π° - ΠΊΠ°ΠΊΡ‚ΠΎ Π΅ Π² случая с Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΈΡ‚Π΅ Java прилоТСния - ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΎΡ‚ броя Π½Π° ядрата ΠΈ със задСлянСто Π½Π° ΠΎΡ‚Π΄Π΅Π»Π½Π° нишка Π·Π° всяко исканС, Ρ‚ΠΎΠ³Π°Π²Π° няма смисъл ΠΎΡ‚ всичко Ρ‚ΠΎΠ²Π°.
ОсвСн Ρ‚ΠΎΠ²Π°, Π°ΠΊΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΊΠ²ΠΎΡ‚ΠΈ ΠΈ Π»ΠΈΠΌΠΈΡ‚ΠΈ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ Π·Π° ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°, която Π΅ Π² основата Π½Π° Kubernetes, ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ ΡΡŠΡ‰ΠΎ Π½Π΅ сС Ρ€Π΅ΡˆΠ°Π²Π° сам. ΠŸΡ€ΠΎΡΡ‚ΠΎ Ρ…Π°Ρ€Ρ‡ΠΈΠΌ ΠΏΠΎΠ²Π΅Ρ‡Π΅ рСсурси Π·Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΈΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΈΠ»ΠΈ Π² ΠΊΡ€Π°ΠΉΠ½Π° смСтка ΠΏΡ€Π΅Ρ€Π°Π·Ρ…ΠΎΠ΄Π²Π°ΠΌΠ΅. И Π°ΠΊΠΎ Ρ‚ΠΎΠ²Π° Π΅ систСма с голямо Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ Π² ΠΏΡƒΠ±Π»ΠΈΡ‡Π΅Π½ ΠΏΡƒΠ±Π»ΠΈΡ‡Π΅Π½ ΠΎΠ±Π»Π°ΠΊ, ΠΏΠΎΡ‡Ρ‚ΠΈ сигурно Ρ‰Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅ рСсурси, ΠΎΡ‚ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ наистина ΠΈΠΌΠ°ΠΌΠ΅ Π½ΡƒΠΆΠ΄Π°.

И ΠΊΠ°ΠΊΠ²ΠΎ Π΄Π° ΠΏΡ€Π°Π²ΠΈΠΌ с всичко Ρ‚ΠΎΠ²Π°?

Казано ΠΏΠΎ-просто, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ асинхронни ΠΈ Π½Π΅Π±Π»ΠΎΠΊΠΈΡ€Π°Ρ‰ΠΈ I/O Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ Ρ€Π°ΠΌΠΊΠΈ ΠΊΠ°Ρ‚ΠΎ Netty, Vert.x ΠΈΠ»ΠΈ Акка. Π’Π΅ са ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-подходящи Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ ΠΏΠΎΡ€Π°Π΄ΠΈ тяхната Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½Π° ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π°. Π‘Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° нСблокиращия I/O, Π΅Π΄Π½Π° ΠΈ ΡΡŠΡ‰Π° нишка ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π° мноТСство Π΅Π΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈ заявки. Π”ΠΎΠΊΠ°Ρ‚ΠΎ Π΅Π΄Π½Π° заявка Ρ‡Π°ΠΊΠ° I/O Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ, Π½ΠΈΡˆΠΊΠ°Ρ‚Π°, която я ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°, сС освобоТдава ΠΈ сС ΠΏΠΎΠ΅ΠΌΠ° ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° заявка. И ΠΊΠΎΠ³Π°Ρ‚ΠΎ I/O Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈΡ‚Π΅ Π½Π°ΠΉ-накрая пристигнат, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° ΠΏΡŠΡ€Π²Π°Ρ‚Π° заявка ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π°. Π§Ρ€Π΅Π· ΠΏΡ€Π΅ΠΏΠ»Π΅Ρ‚Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° заявки Π² Π΅Π΄Π½Π° ΠΈ ΡΡŠΡ‰Π° нишка ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°ΠΌΠ°Π»ΠΈΡ‚Π΅ общия Π±Ρ€ΠΎΠΉ нишки ΠΈ Π΄Π° Π½Π°ΠΌΠ°Π»ΠΈΡ‚Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° рСсурси Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° заявки.

ΠŸΡ€ΠΈ Π½Π΅Π±Π»ΠΎΠΊΠΈΡ€Π°Ρ‰ΠΈ I/O броят Π½Π° ядрата сС ΠΏΡ€Π΅Π²Ρ€ΡŠΡ‰Π° Π² ΠΊΠ»ΡŽΡ‡ΠΎΠ² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€, Π·Π°Ρ‰ΠΎΡ‚ΠΎ опрСдСля броя Π½Π° I/O Π½ΠΈΡˆΠΊΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΎ. ΠšΠΎΠ³Π°Ρ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ, Ρ‚ΠΎΠ²Π° Π²ΠΈ позволява Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ Π΄Π° Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚Π΅ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ ядрата ΠΈ Π΄Π° сС справитС с ΠΏΠΎ-Π³ΠΎΠ»Π΅ΠΌΠΈ натоварвания с ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ рСсурси.

Как, Ρ‚ΠΎΠ²Π° Π»ΠΈ Π΅?

НС, ΠΈΠΌΠ° Π½Π΅Ρ‰ΠΎ Π΄Ρ€ΡƒΠ³ΠΎ. Π Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ ΠΏΠΎΠΌΠ°Π³Π° Π·Π° ΠΏΠΎ-Π΄ΠΎΠ±Ρ€ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° рСсурситС, Π½ΠΎ ΠΈΠΌΠ° ΠΈ своята Ρ†Π΅Π½Π°. По-спСциално, ΠΊΠΎΠ΄ΡŠΡ‚ Ρ‰Π΅ трябва Π΄Π° бъдС прСнаписан Π² ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΈΠ΅ с ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΡ‚Π΅ Π½Π° Π½Π΅Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅ ΠΈ избягванС Π½Π° Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅ Π½Π° I/O нишки. И Ρ‚ΠΎΠ²Π° Π΅ съвсСм Ρ€Π°Π·Π»ΠΈΡ‡Π΅Π½ ΠΌΠΎΠ΄Π΅Π» Π½Π° Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΈ изпълнСниС. И Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‡Π΅ Ρ‚ΡƒΠΊ ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Ρ‚ΠΎΠ²Π° всС ΠΎΡ‰Π΅ Π΅ Ρ€Π°Π΄ΠΈΠΊΠ°Π»Π½Π° промяна Π² обичайния Π½Π°Ρ‡ΠΈΠ½ Π½Π° мислСнС.

ΠŸΡŠΡ€Π²ΠΎ, трябва Π΄Π° сС Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ ΠΊΠ°ΠΊ Π΄Π° ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ΠΊΠΎΠ΄, ΠΊΠΎΠΉΡ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΈ асинхронно. Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Π½Π΅Π±Π»ΠΎΠΊΠΈΡ€Π°Ρ‰ I/O, трябва ΠΈΠ·Ρ€ΠΈΡ‡Π½ΠΎ Π΄Π° посочитС ΠΊΠ°ΠΊΠ²ΠΎ трябва Π΄Π° сС случи, ΠΊΠΎΠ³Π°Ρ‚ΠΎ сС ΠΏΠΎΠ»ΡƒΡ‡ΠΈ ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ Π½Π° заявка. ΠŸΡ€ΠΎΡΡ‚ΠΎΡ‚ΠΎ Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅ ΠΈ ΠΈΠ·Ρ‡Π°ΠΊΠ²Π°Π½Π΅ Π²Π΅Ρ‡Π΅ няма Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ. ВмСсто Ρ‚ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΡ€Π΅Π΄Π°Π²Π°Ρ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΈ извиквания, Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ΅Π½ΠΈΠ΅. Но Ρ‚ΠΎΠ²Π° Π½Π΅ Π΅ всичко: Π·Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Π½Π΅Π±Π»ΠΎΠΊΠΈΡ€Π°Ρ‰ I/O, ΠΈΠΌΠ°Ρ‚Π΅ Π½ΡƒΠΆΠ΄Π° ΠΊΠ°ΠΊΡ‚ΠΎ ΠΎΡ‚ Π½Π΅Π±Π»ΠΎΠΊΠΈΡ€Π°Ρ‰ΠΈ ΡΡŠΡ€Π²ΡŠΡ€ΠΈ, Ρ‚Π°ΠΊΠ° ΠΈ ΠΎΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ, Π·Π° ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Π½Π΅ навсякъдС. Π’ случая с HTTP всичко Π΅ просто, Π½ΠΎ ΠΈΠΌΠ° ΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΈ систСми ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈ.

И Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‡Π΅ ΠΎΠ±Ρ‰Π°Ρ‚Π° рСактивност ΠΎΡ‚ ΠΊΡ€Π°ΠΉ Π΄ΠΎ ΠΊΡ€Π°ΠΉ максимизира СфСктивността, Ρ‚Π°ΠΊΠ°Π²Π° промяна ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Ρ‚Ρ€ΡƒΠ΄Π½Π° Π·Π° ΠΏΡ€ΠΈΠ΅ΠΌΠ°Π½Π΅ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ способността Π·Π° ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π΅Π½ ΠΈ ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π΅Π½ ΠΊΠΎΠ΄ става прСдпоставка, Π·Π° Π΄Π°:

  1. Π•Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° рСсурситС Π² Π½Π°ΠΉ-Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π΅Π½ΠΈΡ‚Π΅ области Π½Π° софтуСрната систСма;
  2. Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎ-опростСн стилов ΠΊΠΎΠ΄ Π² останалитС части.

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡΠΌΠ΅ Π²ΠΈ Quarkus

Π’ΡΡŠΡ‰Π½ΠΎΡΡ‚ Ρ‚ΠΎΠ²Π° Π΅ ΡΡŠΡ‰Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° Quarkus - Π΄Π° ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€Π° Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ ΠΈ ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° Π΅Π΄Π½Π° срСда Π·Π° изпълнСниС.

Quarkus Π΅ Π±Π°Π·ΠΈΡ€Π°Π½ Π½Π° Vert.x ΠΈ Netty, с Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ Ρ€Π°ΠΌΠΊΠΈ ΠΈ Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ ΠΎΡ‚Π³ΠΎΡ€Π΅, Π·Π° Π΄Π° ΠΏΠΎΠΌΠΎΠ³Π½Π΅ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. Quarkus Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π΅ само Π½Π° HTTP микроуслуги, Π½ΠΎ ΠΈ Π½Π° управлявани ΠΎΡ‚ ΡΡŠΠ±ΠΈΡ‚ΠΈΡ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ. ΠŸΠΎΡ€Π°Π΄ΠΈ своята Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½Π° ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π°, Ρ‚ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ със систСми Π·Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ (Apache Kafka, AMQP ΠΈ Π΄Ρ€.).

ΠΠΎΠΌΠ΅Ρ€ΡŠΡ‚ Π΅ ΠΊΠ°ΠΊ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Π΅Π΄ΠΈΠ½ ΠΈ ΡΡŠΡ‰ Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π΅Π½ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π» ΠΊΠ°ΠΊΡ‚ΠΎ Π·Π° ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π΅Π½, Ρ‚Π°ΠΊΠ° ΠΈ Π·Π° Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π΅Π½ ΠΊΠΎΠ΄.

Как Quarkus ΡΡŠΡ‡Π΅Ρ‚Π°Π²Π° ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ ΠΈ Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅

Quarkus ΠΏΡ€Π°Π²ΠΈ Ρ‚ΠΎΠ²Π° брилянтно. Π˜Π·Π±ΠΎΡ€ΡŠΡ‚ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π΅Π½ ΠΈ Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π΅Π½ Π΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π΅Π½ - ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ядро ​​и Π·Π° Π΄Π²Π΅Ρ‚Π΅. Π’ΠΎΠ²Π°, с ΠΊΠΎΠ΅Ρ‚ΠΎ наистина ΠΏΠΎΠΌΠ°Π³Π°, Π΅ Π±ΡŠΡ€Π·, Π½Π΅Π±Π»ΠΎΠΊΠΈΡ€Π°Ρ‰ ΠΊΠΎΠ΄, ΠΊΠΎΠΉΡ‚ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π° ΠΏΠΎΡ‡Ρ‚ΠΈ всичко, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π° ΠΏΡ€Π΅Π· Π½ΠΈΡˆΠΊΠ°Ρ‚Π° Π·Π° Ρ†ΠΈΠΊΡŠΠ» Π½Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΡ, извСстна ΠΎΡ‰Π΅ ΠΊΠ°Ρ‚ΠΎ IO нишка. Но Π°ΠΊΠΎ ΠΈΠΌΠ°Ρ‚Π΅ класичСски REST ΠΈΠ»ΠΈ прилоТСния ΠΎΡ‚ страна Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, Quarkus ΠΈΠΌΠ° Π³ΠΎΡ‚ΠΎΠ² ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π΅Π½ ΠΌΠΎΠ΄Π΅Π» Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅. НапримСр, HTTP ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π² Quarkus сС основава Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π½Π΅Π±Π»ΠΎΠΊΠΈΡ€Π°Ρ‰ ΠΈ Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π΅Π½ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π» (Eclipse Vert.x ΠΈ Netty). Всички HTTP заявки, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈ ΠΎΡ‚ Π²Π°ΡˆΠ΅Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΡŠΡ€Π²ΠΎ сС ΠΏΡ€Π΅Π΄Π°Π²Π°Ρ‚ ΠΏΡ€Π΅Π· Ρ†ΠΈΠΊΡŠΠ» Π½Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΡ (IO Thread) ΠΈ слСд Ρ‚ΠΎΠ²Π° сС ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Ρ‚ Π΄ΠΎ частта ΠΎΡ‚ ΠΊΠΎΠ΄Π°, която управлява заявкитС. Π’ зависимост ΠΎΡ‚ мСстоназначСниСто ΠΊΠΎΠ΄ΡŠΡ‚ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° заявката ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΈΠ·Π²ΠΈΠΊΠ°Π½ Π² ΠΎΡ‚Π΄Π΅Π»Π½Π° нишка (Ρ‚Π°ΠΊΠ° Π½Π°Ρ€Π΅Ρ‡Π΅Π½Π°Ρ‚Π° Ρ€Π°Π±ΠΎΡ‚Π½Π° нишка, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π² случай Π½Π° ΡΡŠΡ€Π²Π»Π΅Ρ‚ΠΈ ΠΈ Jax-RS) ΠΈΠ»ΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈΠ·Ρ…ΠΎΠ΄Π½Π°Ρ‚Π° I/O нишка (Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π΅Π½ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚).

Как Quarkus ΡΡŠΡ‡Π΅Ρ‚Π°Π²Π° ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ ΠΈ Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅

ΠšΠΎΠ½Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡ‚Π΅ Π½Π° систСмата Π·Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π½Π΅Π±Π»ΠΎΠΊΠΈΡ€Π°Ρ‰ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ, Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΈ Π²ΡŠΡ€Ρ…Ρƒ двигатСля Vert.x. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ Π΄Π° ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Ρ‚Π΅, ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚Π΅ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚Π΅ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ ΠΎΡ‚ ΠΌΠΈΠ΄ΡŠΠ»ΡƒΠ΅Ρ€Π½ΠΈ систСми Π·Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ.

Π‘Π°ΠΉΡ‚ΡŠΡ‚ Quarkus.io Π•Ρ‚ΠΎ няколко Π΄ΠΎΠ±Ρ€ΠΈ ΡƒΡ€ΠΎΠΊΠ°, ΠΊΠΎΠΈΡ‚ΠΎ Π΄Π° Π²ΠΈ ΠΏΠΎΠΌΠΎΠ³Π½Π°Ρ‚ Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ с Quarkus:

Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° ΡΡŠΠ·Π΄Π°Π΄ΠΎΡ…ΠΌΠ΅ ΠΎΠ½Π»Π°ΠΉΠ½ практичСски ΡƒΡ€ΠΎΡ†ΠΈ, Π·Π° Π΄Π° Π²ΠΈ Π½Π°ΡƒΡ‡ΠΈΠΌ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ аспСкти Π½Π° Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ само Π² Π±Ρ€Π°ΡƒΠ·ΡŠΡ€, Π±Π΅Π· нСобходимост ΠΎΡ‚ IDE ΠΈ Π±Π΅Π· ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ Ρ‚Π΅Π·ΠΈ ΡƒΡ€ΠΎΡ†ΠΈ Ρ‚ΡƒΠΊ.

ПолСзни рСсурси

10 Π²ΠΈΠ΄Π΅ΠΎ ΡƒΡ€ΠΎΠΊΠ° Π·Π° Quarkus, Π·Π° Π΄Π° сС Π·Π°ΠΏΠΎΠ·Π½Π°Π΅Ρ‚Π΅ с Ρ‚Π΅ΠΌΠ°Ρ‚Π°

ΠšΠ°ΠΊΡ‚ΠΎ сС ΠΊΠ°Π·Π²Π° Π² сайта Quarkus.io, ΠšΠ²Π°Ρ€ΠΊΡƒΡ – Ρ‚ΠΎΠ²Π° са Kubernetes-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ Java стСк, ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π΅Π½ Π·Π° GraalVM ΠΈ OpenJDK HotSpot ΠΈ ΡΡŠΠ±Ρ€Π°Π½ ΠΎΡ‚ Π½Π°ΠΉ-Π΄ΠΎΠ±Ρ€ΠΈΡ‚Π΅ Java Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ стандарти.

Π—Π° Π΄Π° Π²ΠΈ ΠΏΠΎΠΌΠΎΠ³Π½Π΅ΠΌ Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ Ρ‚Π΅ΠΌΠ°Ρ‚Π°, ΠΈΠ·Π±Ρ€Π°Ρ…ΠΌΠ΅ 10 Π²ΠΈΠ΄Π΅ΠΎ ΡƒΡ€ΠΎΠΊΠ°, ΠΊΠΎΠΈΡ‚ΠΎ ΠΎΠ±Ρ…Π²Π°Ρ‰Π°Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ аспСкти Π½Π° Quarkus ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ ΠΌΡƒ:

1. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡΠ½Π΅ Π½Π° Quarkus: Π‘Π»Π΅Π΄Π²Π°Ρ‰ΠΎΡ‚ΠΎ ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΠ΅ Java Framework Π·Π° Kubernetes

ΠžΡ‚ Вомас ΠšΠ²Π°Ρ€Π½ΡΡ‚Ρ€ΠΎΠΌ ΠΈ Π”ΠΆΠ΅ΠΉΡΡŠΠ½ Π“Ρ€ΠΈΠΉΠ½
Π¦Π΅Π»Ρ‚Π° Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Quarkus Π΅ Π΄Π° създадС Java ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Π·Π° Kubernetes ΠΈ Π±Π΅Π·ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΈ срСди ΠΈ Π΄Π° ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€Π° Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ ΠΈ ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ½ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² Π΅Π΄Π½Π° срСда Π·Π° изпълнСниС, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π΄Π° ΠΌΠΎΠ³Π°Ρ‚ гъвкаво Π΄Π° промСнят своя ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, ΠΊΠΎΠ³Π°Ρ‚ΠΎ работят с ΡˆΠΈΡ€ΠΎΠΊΠ° Π³Π°ΠΌΠ° ΠΎΡ‚ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ Π½Π° прилоТСния. НаучСтС ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π² ΡƒΠ²ΠΎΠ΄Π½Π°Ρ‚Π° лСкция ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ.

2. Quarkus: Π‘ΡƒΠΏΠ΅Ρ€Π±ΡŠΡ€Π·Π° субатомна Java

ΠžΡ‚: Π‘ΡŠΡ€ Π‘ΡŠΡ‚ΡŠΡ€
Π’ΠΎΠ·ΠΈ Π²ΠΈΠ΄Π΅ΠΎ ΡƒΡ€ΠΎΠΊ ΠΎΡ‚ DevNation Live дСмонстрира ΠΊΠ°ΠΊ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Quarkus Π·Π° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΈ Java прилоТСния, API, микроуслуги ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±Π΅Π· ΡΡŠΡ€Π²ΡŠΡ€ Π² срСда Kubernetes/OpenShift, ΠΊΠΎΠ΅Ρ‚ΠΎ Π³ΠΈ ΠΏΡ€Π°Π²ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΈ, ΠΏΠΎ-Π±ΡŠΡ€Π·ΠΈ ΠΈ ΠΏΠΎ-ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΈ.

3. Quarkus ΠΈ GraalVM: ускоряванС Π½Π° Hibernate Π΄ΠΎ супСр скорости ΠΈ свиванСто ΠΌΡƒ Π΄ΠΎ субатомни Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΈ

Автор: Π‘Π°Π½Π΅ Π“Ρ€ΠΈΠ½ΠΎΠ²Π΅Ρ€ΠΎ
ΠžΡ‚ прСзСнтацията Ρ‰Π΅ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ ΠΊΠ°ΠΊ сС Π΅ появил Quarkus, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΈ ΠΊΠ°ΠΊ Π²ΠΈ позволява Π΄Π° ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ слоТни Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠ°Ρ‚ΠΎ Hibernate ORM, ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΈ с Ρ€ΠΎΠ΄Π½ΠΈΡ‚Π΅ GraalVM изобраТСния.

4. НаучСтС сС Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚Π΅ прилоТСния Π±Π΅Π· ΡΡŠΡ€Π²ΡŠΡ€

Автор: ΠœΠ°Ρ€Ρ‚ΠΈΠ½ Π›ΡƒΡ‚ΡŠΡ€
Π’ΠΈΠ΄Π΅ΠΎΡ‚ΠΎ ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΊΠ°ΠΊ Π΄Π° ΡΡŠΠ·Π΄Π°Π΄Π΅Ρ‚Π΅ просто Java ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Quarkus ΠΈ Π΄Π° Π³ΠΎ Ρ€Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅ ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±Π΅Π· ΡΡŠΡ€Π²ΡŠΡ€ Π½Π° Knative.

5. Quarkus: ЗабавлявайтС сС с ΠΊΠΎΠ΄ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ

Автор: Π•Π΄ΡΡŠΠ½ Π―Π½Π°Π³Π°
Π’ΠΈΠ΄Π΅ΠΎ Ρ€ΡŠΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΠΎ Π·Π° създаванС Π½Π° вашия ΠΏΡŠΡ€Π²ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Quarkus, ΠΊΠΎΠ΅Ρ‚ΠΎ Π²ΠΈ позволява Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ Π·Π°Ρ‰ΠΎ Quarkus ΠΏΠ΅Ρ‡Π΅Π»ΠΈ ΡΡŠΡ€Ρ†Π°Ρ‚Π° Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅.

6. Java ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ – ΠΊΠ°ΠΊΠ²ΠΎ Ρ‰Π΅ бъдС тяхното ΡΡŠΠ²ΠΌΠ΅ΡΡ‚Π½ΠΎ Π±ΡŠΠ΄Π΅Ρ‰Π΅

ΠŸΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½ΠΎ ΠΎΡ‚ ΠœΠ°Ρ€ΠΊ Π›ΠΈΡ‚ΡŠΠ»
Π’Π°Π·ΠΈ прСзСнтация прСдставя историята Π½Π° Java ΠΈ обяснява Π·Π°Ρ‰ΠΎ Quarkus Π΅ Π±ΡŠΠ΄Π΅Ρ‰Π΅Ρ‚ΠΎ Π½Π° Java.

7. Quarkus: Π‘ΡƒΠΏΠ΅Ρ€Π±ΡŠΡ€Π·Π° субатомна Java

Автор: Димитрис АндрСадис
ΠŸΡ€Π΅Π³Π»Π΅Π΄ Π½Π° прСдимствата Π½Π° Quarkus, ΠΊΠΎΠΈΡ‚ΠΎ са ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ·Π½Π°Π½ΠΈΠ΅ ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅: простота, ΡΠ²Ρ€ΡŠΡ…Π²ΠΈΡΠΎΠΊΠΈ скорости, Π½Π°ΠΉ-Π΄ΠΎΠ±Ρ€ΠΈΡ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ стандарти.

8. ΠšΠ²Π°Ρ€ΠΊΡƒΡ ΠΈ субатомни Ρ€Π°ΠΊΠ΅Ρ‚Π½ΠΈ систСми

Автор: ΠšΠ»Π΅ΠΌΠ΅Π½Ρ‚ ЕскофиС
Π§Ρ€Π΅Π· интСграция с GraalVM, Quarkus осигурява ΡƒΠ»Ρ‚Ρ€Π°-Π±ΡŠΡ€Π· ΠΎΠΏΠΈΡ‚ Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ субатомна срСда Π·Π° изпълнСниС. ΠΠ²Ρ‚ΠΎΡ€ΡŠΡ‚ Π³ΠΎΠ²ΠΎΡ€ΠΈ Π·Π° Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½Π°Ρ‚Π° страна Π½Π° Quarkus ΠΈ ΠΊΠ°ΠΊ Π΄Π° я ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π° Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ ΠΈ стрийминг прилоТСния.

9. Quarkus ΠΈ Π±ΡŠΡ€Π·ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅ Π½Π° прилоТСния Π² Eclipse MicroProfile

Автор: Π”ΠΆΠΎΠ½ Клинган
Π§Ρ€Π΅Π· ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€Π°Π½Π΅ Π½Π° Eclipse MicroProfile ΠΈ Quarkus, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚ ΠΏΡŠΠ»Π½ΠΎΡ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π½ΠΈ MicroProfile прилоТСния, ΠΊΠΎΠΈΡ‚ΠΎ сС стартират Π·Π° дСсСтки милисСкунди. Π’ΠΈΠ΄Π΅ΠΎΠΊΠ»ΠΈΠΏΡŠΡ‚ Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π° ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΊΠ°ΠΊ Π΄Π° ΠΊΠΎΠ΄ΠΈΡ€Π°Ρ‚Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΠ·ΠΈΡ€Π°Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ MicroProfile Π·Π° внСдряванС Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Kubernetes.

10. Java, "Turbo" вСрсия

Автор: ΠœΠ°Ρ€ΠΊΡƒΡ Π‘ΠΈΠΉΠ»
ΠΠ²Ρ‚ΠΎΡ€ΡŠΡ‚ ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΊΠ°ΠΊ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Quarkus Π·Π° създаванС Π½Π° супСр-ΠΌΠ°Π»ΠΊΠΈ, супСр-Π±ΡŠΡ€Π·ΠΈ Java ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ позволяват истински ΠΏΡ€ΠΎΠ±ΠΈΠ²ΠΈ, особСно Π² срСда Π±Π΅Π· ΡΡŠΡ€Π²ΡŠΡ€.



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

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