Loading...

[Bydgoszcz JUG #28] Szymon Stępniak - GraalVM i generowanie natywnych obrazów, czyli Java bez JVM

167 views

Loading...

Loading...

Rating is available when the video has been rented.
This feature is not available right now. Please try again later.
Published on Jul 10, 2019

Programiści Java przyzwyczaili się do wirtualnej maszyny Java, kompilatora JIT, konieczności “rozgrzewania” aplikacji w celu poprawienia wydajności, czy też dość powolnego startu programów uruchamianych na JVM. GraalVM wywraca ten świat do góry nogami. Kompilację just-in-time zastępuje kompilacją ahead-of-time, powodując jednocześnie, że “rozgrzewanie” aplikacji przestaje być potrzebne. Standardowego Java HotSpot VM zastępuje mikro maszyną wirtualną, SubstrateVM, która zajmuje się wyłącznie podstawowymi zadaniami, jak zarządzaniem pamięcią czy obsługą wątków. A do tego pozwala skompilować istniejący kod do postaci programu wykonywalnego, zmniejszając jednocześnie czas potrzebny na uruchomienie programu do kilku milisekund. Brzmi niewiarygodnie, prawda? Rzeczywistość nie jest jednak tak różowa. Generowanie natywnych obrazów obarczone jest wieloma ograniczeniami, pułapkami, oraz problemami trudnymi do wyśledzenia. W prezentacji tej podzielę się z Wami wynikami eksperymentów, które przeprowadziłem z GraalVM. Pokażę Wam testy przeprowadzone m.in. na programach wiersza poleceń napisanych w Groovy, czy też web aplikacji napędzanej frameworkiem Netty. Nie wystarczy nam czasu i możliwości, żeby zbadać wszystkie możliwe przypadki, ale z prezentacji tej dowiedzie się:
- jaka jest różnica pomiędzy kompilatorem Graal, a GraalVM,
- jakie są ograniczenia kompilacji ahead-of-time,
- jak rozwiązać problemy z obiektami proxy oraz instancjami tworzonymi przez refleksję,
- oraz czy Wasz kolejny projekt koniecznie musi wykorzystywać możliwości GraalVM.
Będzie też dużo materiałów źródłowych pozwalających pogłębić wiedzę na temat GraalVM i jego możliwości.

Szymon Stępniak:
Na co dzień zajmuję się Continuous Delivery w Upwork Global Inc., gdzie pomagam dziesiątkom zespołów budować w pełni zautomatyzowane procesy budowania i wdrażania aplikacji w świecie mikroserwisów. Prowadzę bloga https://e.printstacktrace.blog za pośrednictwem którego dzielę się moją pasją do programowania i rozwiązywania nietuzinkowych problemów. W wolnych chwilach odpowiadam na pytania na Stack Overflow, gram na gitarze, i cieszę się czasem spędzonym z rodziną.

Loading...

When autoplay is enabled, a suggested video will automatically play next.

Up next


to add this to Watch Later

Add to

Loading playlists...