{"id":76573,"date":"2020-04-03T13:42:25","date_gmt":"2020-04-03T11:42:25","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/nativnaya-kompilyacziya-v-quarkus-pochemu-eto-vazhno"},"modified":"2020-04-03T13:42:25","modified_gmt":"2020-04-03T11:42:25","slug":"nativnaya-kompilyacziya-v-quarkus-pochemu-eto-vazhno","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/nativnaya-kompilyacziya-v-quarkus-pochemu-eto-vazhno","title":{"rendered":"Kompilimi natyral n\u00eb Quarkus \u2013 pse \u00ebsht\u00eb e r\u00ebnd\u00ebsishme","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>P\u00ebrsh\u00ebndetje t\u00eb gjith\u00ebve! Kemi postimin e dyt\u00eb nga seria jon\u00eb p\u00ebr Quarkus \u2013 sot do t\u00eb flasim mbi kompilimin natyral.<\/p>\n<p><img decoding=\"async\" alt=\"Kompilimi natyral n\u00eb Quarkus \u2013 pse \u00ebsht\u00eb e r\u00ebnd\u00ebsishme\" src=\"\/wp-content\/uploads\/2020\/04\/3690313f6718405b06f0a6b5360767e3.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/blog\/2019\/03\/20\/quarkus-0-12-0-released\/\">Quarkus<\/a><\/noindex> \u2013 \u00ebsht\u00eb nj\u00eb stak Java, i optimizuar p\u00ebr <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/topics\/kubernetes\/\">Kubernetes<\/a><\/noindex>. Edhe pse, natyrisht, ka shum\u00eb p\u00ebr t\u00eb b\u00ebr\u00eb k\u00ebtu, ne kemi punuar mir\u00eb mbi shum\u00eb aspekte, p\u00ebrfshir\u00eb optimizimin e JVM dhe nj\u00eb varg framework-esh. Nj\u00eb nga ve\u00e7orit\u00eb e Quarkus q\u00eb ka t\u00ebrhequr interes t\u00eb madh nga zhvilluesit \u00ebsht\u00eb qasja komplekse dhe pa brez n\u00eb transformimin e kodit Java n\u00eb skedar\u00eb ekzekutues p\u00ebr sistemin operativ specifik (e njohur si \"kompilimi natyral\"), n\u00eb m\u00ebnyr\u00eb t\u00eb ngjashme me C dhe C++, ku nj\u00eb kompilim i till\u00eb zakonisht ndodh n\u00eb fund t\u00eb ciklit t\u00eb nd\u00ebrtimit, testimit dhe implementimit.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nEdhe pse kompilimi natyral, si\u00e7 do ta tregojm\u00eb m\u00eb posht\u00eb, \u00ebsht\u00eb i r\u00ebnd\u00ebsish\u00ebm, duhet t\u00eb thuhet se Quarkus punon shum\u00eb mir\u00eb edhe n\u00eb makin\u00ebn standarde Java OpenJDK Hotspot p\u00ebr shkak t\u00eb p\u00ebrmir\u00ebsimeve t\u00eb performanc\u00ebs q\u00eb kemi zbatuar n\u00eb t\u00eb gjith\u00eb stakun. Prandaj, kompilimi natyral duhet t\u00eb shihet si nj\u00eb p\u00ebrfitim shtes\u00eb q\u00eb mund t\u00eb p\u00ebrdoret sipas d\u00ebshir\u00ebs ose nevoj\u00ebs. N\u00eb t\u00eb v\u00ebrtet\u00eb, kur b\u00ebhet fjal\u00eb p\u00ebr imazhet natyrale, Quarkus n\u00eb mas\u00eb t\u00eb madhe mb\u00ebshtetet te OpenJDK. Nd\u00ebrkoh\u00eb, moda dev e pritur mir\u00eb nga zhvilluesit ofron testim pothuajse t\u00eb menj\u00ebhersh\u00ebm t\u00eb ndryshimeve p\u00ebrmes mjeteve t\u00eb zhvilluara p\u00ebr ekzekutimin dinamik t\u00eb kodit, t\u00eb realizuara n\u00eb Hotspot. P\u00ebr m\u00eb tep\u00ebr, gjat\u00eb krijimit t\u00eb imazheve natyrale, GraalVM aktivizon bibliotek\u00ebn e klasave OpenJDK dhe mund\u00ebsit\u00eb e HotSpot.<\/p>\n<p>Pra, p\u00ebrse na nevojitet kompilimi natyral, n\u00ebse gjith\u00e7ka \u00ebsht\u00eb optimizuar kaq mir\u00eb? N\u00eb k\u00ebt\u00eb pyetje do t\u00eb p\u00ebrpiqemi t\u00eb p\u00ebrgjigjemi m\u00eb posht\u00eb.<\/p>\n<p>Le t\u00eb fillojm\u00eb me t\u00eb dukshmen: Red Hat ka shum\u00eb p\u00ebrvoj\u00eb n\u00eb optimizimin e JVM, stack-\u00ebve dhe framework-eve gjat\u00eb zhvillimit t\u00eb projektit <noindex><a rel=\"nofollow\" href=\"http:\/\/www.jboss.org\/\">JBoss<\/a><\/noindex>, duke p\u00ebrfshir\u00eb:<\/p>\n<ul>\n<li>Serveri i par\u00eb i aplikacioneve p\u00ebr t\u00eb punuar n\u00eb cloud mbi platform\u00ebn <noindex><a rel=\"nofollow\" href=\"https:\/\/www.redhat.com\/en\/blog\/openshift-is-the-first-paas-to-support-java-ee-6-full-profile-in-the-cloud\">Red Hat OpenShift<\/a><\/noindex>.<\/li>\n<li>Serveri i par\u00eb i aplikacioneve p\u00ebr t\u00eb punuar n\u00eb komputerat <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/index.php\/videos\/youtube\/9c-g7UxT0nk\/\">Plug PC<\/a><\/noindex>.<\/li>\n<li>Serveri i par\u00eb i aplikacioneve p\u00ebr t\u00eb punuar n\u00eb <noindex><a rel=\"nofollow\" href=\"http:\/\/blog.arungupta.me\/wildfly-on-raspberry-pi-techtip-24\/\">Raspberry Pi<\/a><\/noindex>.<\/li>\n<li>Nj\u00eb gam\u00eb t\u00eb gjer\u00eb projektesh q\u00eb funksionojn\u00eb n\u00eb pajisje <noindex><a rel=\"nofollow\" href=\"http:\/\/www.jboss.org\/iot\/android\/\">Android<\/a><\/noindex>.<\/li>\n<\/ul>\n<p>\nNe jemi angazhuar prej vitesh n\u00eb zgjidhjen e problemeve t\u00eb ekzekutimit t\u00eb aplikacioneve Java n\u00eb cloud dhe n\u00eb pajisje me burime t\u00eb kufizuara (lexo, IoT) dhe kemi m\u00ebsuar t\u00eb nxjerrim maksimumin nga JVM n\u00eb aspektin e performanc\u00ebs dhe optimizimit t\u00eb memories. Ashtu si shum\u00eb t\u00eb tjer\u00eb, ne kemi punuar prej koh\u00ebsh me kompilimin natyral t\u00eb aplikacioneve Java p\u00ebrmes <noindex><a rel=\"nofollow\" href=\"https:\/\/gcc.gnu.org\/wiki\/GCJ\">GCJ<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/readytalk.github.io\/avian\/\">Avian<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.excelsiorjet.com\/\">Excelsior JET<\/a><\/noindex> dhe madje <noindex><a rel=\"nofollow\" href=\"https:\/\/source.android.com\/devices\/tech\/dalvik\">Dalvik<\/a><\/noindex> dhe e kuptojm\u00eb mir\u00eb p\u00ebrfitimet dhe disavantazhet e k\u00ebtij qasje (p\u00ebr shembull, dilem\u00ebn e zgjedhjes midis universialitetit \"build once \u2013 run-anywhere\" dhe faktit se aplikacionet e kompilura kan\u00eb nj\u00eb p\u00ebrmas\u00eb m\u00eb t\u00eb vog\u00ebl dhe fillojn\u00eb m\u00eb shpejt).<\/p>\n<p>Pse \u00ebsht\u00eb kaq e r\u00ebnd\u00ebsishme t\u00eb merret parasysh k\u00ebto p\u00ebrfitime dhe disavantazhe? Sepse n\u00eb disa situata proporcioni i tyre b\u00ebhet vendimtar:<\/p>\n<ul>\n<li>P\u00ebr shembull, n\u00eb ambientet serverless\/nd\u00ebrvepruese me ngjarje, ku <noindex><a rel=\"nofollow\" href=\"https:\/\/mikhail.io\/2018\/08\/serverless-cold-start-war\/\">sh\u00ebrbimet duhet t\u00eb nisin<\/a><\/noindex> n\u00eb modin (t\u00eb ashp\u00ebr ose t\u00eb but\u00eb) t\u00eb koh\u00ebs reale, p\u00ebr t'u p\u00ebrgjigjur n\u00eb koh\u00eb ndaj ngjarjeve. Ndryshe nga sh\u00ebrbimet e q\u00ebndrueshme me jet\u00eb t\u00eb gjat\u00eb, k\u00ebtu, koha e ftohjes kritikon r\u00ebnd\u00eb koh\u00ebn e p\u00ebrgjigjes ndaj k\u00ebrkesave. Akoma merr nj\u00eb koh\u00eb t\u00eb konsiderueshme p\u00ebr fillimin e JVM, dhe megjith\u00ebse n\u00eb disa raste mund t\u00eb shkurtohet p\u00ebrmes metodave t\u00eb pastra harduerike, ndryshimi midis nj\u00eb sekonde dhe 5 milisekondave mund t\u00eb jet\u00eb nj\u00eb \u00e7\u00ebshtje jete dhe vdekje. Po, k\u00ebtu mund t\u00eb eksperimentojm\u00eb me krijimin e nj\u00eb rezerv\u00eb t\u00eb nxeht\u00eb t\u00eb makinave Java (si\u00e7 e kemi b\u00ebr\u00eb, p\u00ebr shembull, gjat\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/projectodd\/kwsk\">portimit t\u00eb OpenWhisk n\u00eb Knative<\/a><\/noindex>), por vet\u00eb kjo nuk garanton numrin e mjaftuesh\u00ebm t\u00eb JVM p\u00ebr t\u00eb trajtuar k\u00ebrkesat n\u00eb p\u00ebrputhje me ngarkes\u00ebn. Edhe nga pik\u00ebpamja ekonomike, kjo, sigurisht, nuk \u00ebsht\u00eb zgjidhja m\u00eb e mir\u00eb.<\/li>\n<li>M\u00eb tej, ka nj\u00eb aspekt tjet\u00ebr q\u00eb shpesh paraqitet, si\u00e7 \u00ebsht\u00eb multitensionimi. Megjith\u00ebse JVM ka arritur shum\u00eb af\u00ebr mund\u00ebsive t\u00eb sistemeve operative, ato ende nuk jan\u00eb n\u00eb gjendje t\u00eb b\u00ebjn\u00eb at\u00eb q\u00eb jemi m\u00ebsuar me t\u00eb n\u00eb Linux \u2013 t\u00eb izolojn\u00eb proceset. K\u00ebshtu q\u00eb nj\u00eb d\u00ebshtim i nj\u00eb thase mund t\u00eb d\u00ebshtoj\u00eb t\u00eb gjith\u00eb makin\u00ebn Java. Shum\u00eb p\u00ebrpiqen ta anashkalojn\u00eb k\u00ebt\u00eb disavantazh duke ndar\u00eb nj\u00eb JVM t\u00eb ve\u00e7ant\u00eb p\u00ebr aplikacionet e \u00e7do p\u00ebrdoruesi, p\u00ebr t\u00eb minimizuar pasojat e d\u00ebshtimit. Kjo \u00ebsht\u00eb krejt logjike, por nuk p\u00ebrshtatet mir\u00eb me shkall\u00ebzimin.<\/li>\n<li>P\u00ebrve\u00e7 k\u00ebsaj, p\u00ebr aplikacionet e orientuara n\u00eb cloud, nj\u00eb tregues i till\u00eb si densiteti i sh\u00ebrbimeve n\u00eb host \u00ebsht\u00eb i r\u00ebnd\u00ebsish\u00ebm. Kalimi n\u00eb metodologjin\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/12factor.net\/\">12 faktor\u00ebt e aplikacionit<\/a><\/noindex>, mikroservis\u00ebt dhe Kubernetes rrisin numrin e makinave Java p\u00ebr nj\u00eb aplikacion. K\u00ebshtu, nga nj\u00ebra an\u00eb, gjith\u00e7ka kjo ofron elasticitet dhe besueshm\u00ebri, por nj\u00ebkoh\u00ebsisht rritet edhe shpenzimi i memorjes baz\u00eb p\u00ebr \u00e7do sh\u00ebrbim, p\u00ebr m\u00eb tep\u00ebr, nj\u00eb pjes\u00eb e k\u00ebtyre shpenzimeve shpesh nuk \u00ebsht\u00eb absolutisht e nevojshme. Skedar\u00ebt ekzekutiv\u00eb t\u00eb kompiluar statikisht p\u00ebrfitojn\u00eb k\u00ebtu nga teknika t\u00eb ndryshme optimizimi, si eliminimi i kodit t\u00eb vdekur n\u00eb nivel t\u00eb ul\u00ebt, kur n\u00eb imazhin p\u00ebrfundimtar p\u00ebrfshihen vet\u00ebm ato pjes\u00eb t\u00eb kuadrit (p\u00ebrfshir\u00eb dhe JDK-n\u00eb e vet) q\u00eb sh\u00ebrbimi realizohet v\u00ebrtet. Prandaj, kompilimi natyror i Quarkus ndihmon n\u00eb vendosjen m\u00eb t\u00eb ngjeshur t\u00eb kopjeve t\u00eb sh\u00ebrbimeve n\u00eb host pa kompromise p\u00ebr sigurin\u00eb.<\/li>\n<\/ul>\n<p>\nArgumentet e sip\u00ebrp\u00ebrmendura jan\u00eb tashm\u00eb t\u00eb mjaftueshme p\u00ebr t\u00eb kuptuar arsyeshm\u00ebrin\u00eb e kompiluese natyrore nga pik\u00ebpamja e pjes\u00ebmarr\u00ebsve n\u00eb projektin Quarkus. Megjithat\u00eb, ekziston edhe nj\u00eb arsye tjet\u00ebr, jo teknike, por nj\u00ebsoj e r\u00ebnd\u00ebsishme: vitet e fundit shum\u00eb programues dhe kompani zhvilluesh jan\u00eb distancuar nga Java n\u00eb favor t\u00eb gjuh\u00ebve t\u00eb reja t\u00eb programimit, duke e konsideruar Java-n s\u00eb bashku me JVM-t\u00eb e saj, stak\u00ebt dhe kuadrot si shum\u00eb t\u00eb pangopura n\u00eb lidhje me memorjen, tep\u00ebr t\u00eb ngadalta, etj.<\/p>\n<p>Megjithat\u00eb, zakoni p\u00ebr t\u00eb p\u00ebrdorur t\u00eb nj\u00ebjtin mjet p\u00ebr zgjidhjen e \u00e7do problemi \u2013 <noindex><a rel=\"nofollow\" href=\"https:\/\/www.reddit.com\/r\/java\/comments\/8xv3ha\/does_anybody_use_spring_boot_with_aws_lambda_do\/\">nuk \u00ebsht\u00eb gjithmon\u00eb e drejt\u00eb<\/a><\/noindex>. Ndonj\u00ebher\u00eb \u00ebsht\u00eb m\u00eb mir\u00eb t\u00eb b\u00ebsh nj\u00eb hap prapa dhe t\u00eb k\u00ebrkosh di\u00e7ka tjet\u00ebr. Dhe n\u00ebse Quarkus i b\u00ebn njer\u00ebzit t\u00eb ndalojn\u00eb dhe t\u00eb mendojn\u00eb, at\u00ebher\u00eb kjo \u00ebsht\u00eb e mir\u00eb p\u00ebr t\u00ebr\u00eb ekosistemin Java. Quarkus p\u00ebrfaq\u00ebson nj\u00eb qasje novatore p\u00ebr krijimin e aplikacioneve m\u00eb efikase, duke e b\u00ebr\u00eb Java-n m\u00eb t\u00eb r\u00ebnd\u00ebsishme p\u00ebr arkitekturat e reja t\u00eb aplikacioneve, si p.sh. serverless. P\u00ebr m\u00eb tep\u00ebr, fal\u00eb zgjerueshm\u00ebris\u00eb s\u00eb tij, shpresojm\u00eb se Quarkus do t\u00eb ket\u00eb nj\u00eb ekosistem t\u00eb t\u00ebr\u00eb Java-zhvillimesh, duke rritur ndjesh\u00ebm numrin e kuadrove q\u00eb do t\u00eb mb\u00ebshtesin natyrisht kompilimin natyror si pjes\u00eb e aplikacioneve.<br \/>\n<br \/>Burimi: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/redhatrussia\/blog\/495212\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u0421 \u0432\u0430\u043c\u0438 \u0432\u0442\u043e\u0440\u043e\u0439 \u043f\u043e\u0441\u0442 \u0438\u0437 \u043d\u0430\u0448\u0435\u0439 \u0441\u0435\u0440\u0438\u0438 \u043f\u043e Quarkus \u2013 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043e \u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438. Quarkus \u2013 \u044d\u0442\u043e Java-\u0441\u0442\u0435\u043a, \u0437\u0430\u0442\u043e\u0447\u0435\u043d\u043d\u044b\u0439 \u043f\u043e\u0434 Kubernetes. \u0418 \u0445\u043e\u0442\u044f \u0437\u0434\u0435\u0441\u044c, \u043a\u043e\u043d\u0435\u0447\u043d\u043e, \u043c\u043d\u043e\u0433\u043e\u0435 \u0435\u0449\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u043e\u0438\u0442 \u0441\u0434\u0435\u043b\u0430\u0442\u044c, \u043c\u044b \u0445\u043e\u0440\u043e\u0448\u043e \u043f\u0440\u043e\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u043c\u0430\u0441\u0441\u0443 \u0430\u0441\u043f\u0435\u043a\u0442\u043e\u0432, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044e JVM \u0438 \u0446\u0435\u043b\u043e\u0433\u043e \u0440\u044f\u0434\u0430 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u043e\u0432. \u041e\u0434\u043d\u043e\u0439 \u0438\u0437 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0435\u0439 Quarkus, \u0432\u044b\u0437\u0432\u0430\u0432\u0448\u0435\u0439 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0435\u0441 \u0441\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432, \u0441\u0442\u0430\u043b [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":76574,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-76573","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442!\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/nativnaya-kompilyacziya-v-quarkus-pochemu-eto-vazhno\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041d\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f \u0432 Quarkus \u2013 \u043f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u0432\u0430\u0436\u043d\u043e | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442!\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/nativnaya-kompilyacziya-v-quarkus-pochemu-eto-vazhno\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-04-03T11:42:25+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-04-03T11:42:25+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Kompilimi natyror n\u00eb Quarkus \u2013 pse \u00ebsht\u00eb e r\u00ebnd\u00ebsishme | ProHoster","description":"P\u00ebrsh\u00ebndetje t\u00eb gjith\u00ebve!","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/nativnaya-kompilyacziya-v-quarkus-pochemu-eto-vazhno","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041d\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f \u0432 Quarkus \u2013 \u043f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u0432\u0430\u0436\u043d\u043e | ProHoster","og:description":"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442!","og:url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/nativnaya-kompilyacziya-v-quarkus-pochemu-eto-vazhno","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-04-03T11:42:25+00:00","article:modified_time":"2020-04-03T11:42:25+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"76573","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 17:34:49","updated":"2022-09-28 02:06:54","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/76573","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=76573"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/76573\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media\/76574"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=76573"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=76573"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=76573"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}