Red Hat i GraalVM zajednica nedavno su najavili izlazak nove GraalVM distribucije pod nazivom Mandrel . Očekuje se da će ova nova distribucija unaprijediti Red Hat verziju Quarkusa, nedavno najavljenog dodatka Red Hat Runtimesu.
Quarkus je nativni Java Kubernetes framework za JVM i nativnu kompilaciju. Quarkus pruža efikasno rješenje za pokretanje serverless Java aplikacija, mikroservisa, kontejnera, Kubernetes-a, FaaS-a ili cloud aplikacija. Mandrel je otvorenog koda i dostupan na GitHub-u, ali još uvijek nema binarnu distribuciju.
Prema bilješci Marka Littlea, višeg direktora inženjeringa u Red Hatu, Mandrel se može opisati kao distribucija standardnog OpenJDK-a sa posebno upakovanom izvornom GraalVM slikom.
Primarni cilj Red Hatovog uvođenja Mandrela je poboljšanje brzine i efikasnosti Quarkus frameworka. To je framework koji nudi lokalni razvoj s brzim ponovnim učitavanjem i kontejneriziranom ili serverless distribucijom pružateljima usluga računarstva u oblaku.
Quarkus se fokusira na mogućnost izgradnje izvornih izvršnih datoteka koje se brže pokreću, a također smanjuju troškove i operativne resurse u oblaku.
U stvari, Red Hat je objasnio da je za Quarkus važan element GraalVM-a njegova izvorna funkcija slike , koja proizvodi izvorne izvršne datoteke - ključna karakteristika za Javu da bude konkurentna u cloud-native radnim opterećenjima. Stoga, Mandrel omogućava korištenje GraalVM-a uz OpenJDK 11 na Red Hat Enterprise Linuxu i drugim OpenJDK 11 distribucijama.
Prema Red Hat-u, razlika prema korisniku je minimalna, ali za održavanje je neophodno prethodno usklađivanje s OpenJDK 11 i GraalVM.
"S Mandrelom, kupci Red Hat-a i zajednica GraalVM imaju koristi od istinski otvorenog razvoja, a Red Hat može podržati svoje kupce provjerenim mehanizmima, vraćajući zajednicama u koje vjeruju da nastave napredovati u državi. Vrhunskog računarskog rada" rekla je kompanija govoreći o Mandrelu.
Što se tiče performansi, GraalVM se ističe 50 puta bržim vremenom pokretanja i 5 puta nižom potrošnjom memorije.
Ovi različiti testovi su rađeni korištenjem starije verzije okvira Quarkus u odnosu na Java HotSpot mod. Iako ovo poboljšanje zahtijeva duže vrijeme kompajliranja, može se koristiti paralelno s implementacijom Quarkus Lambda i Azure funkcija.
Nadalje, Mandrel GitHub repozitorij još uvijek ne nudi binarnu distribuciju. Stoga korisnici sami kompajliraju JDK slijedeći upute. Dodatno, softverski programer James Ward detaljno je pregledao GraalVM, navodeći njegove prednosti u performansama, kao i neke nedostatke, poput aplikacija koje se oslanjaju na refleksiju.
Prema njegovim riječima, ovo stvara problem nativnim slikama GraalVM-a jer se refleksija javlja u vrijeme izvođenja, što otežava AOT-ovom kompajleru da utvrdi putanje izvršenja.
Što se tiče aplikacija koje ne trebaju razmišljati, Quarkusova početna stranica ukazuje direktno na prednost: 12 MB RAM-a naspram 73 MB (pad od 83%) i 0.016 sekundi u prvom odgovoru naspram 0.943 (pad od 98%) ).
Programeri sada mogu koristiti Mandrel sa vlastitom verzijom ili se mogu osloniti na GraalVM zajednicu ili bilo koju distribuciju JDK 11 i novijih verzija. Drugi kažu da ovi izvorni Java okviri zapravo ne funkcionišu i da ne bi trebali postati industrijski standard.
Prema njihovom mišljenju, to nije tehnologija opšte namjene gdje možete uzeti postojeću Java aplikaciju i učiniti je izvornom. Ovo neće funkcionisati, čak ni za aplikacije napisane korištenjem biblioteke iz ogromnog Java ekosistema.
Potonji vjeruju da se razni dobavljači okvira klade na činjenicu da je većina Java aplikacija HTTP / ORM / JSON aplikacija, uz mjere i sigurnost itd.
Ako želite saznati više o tome, možete pogledati sljedeći link.