對于Java開發(fā)人員來說,實(shí)時(shí)(JIT)編譯器是提高性能的關(guān)鍵。然而,在容器世界中,由于CPU和內(nèi)存消耗的限制,性能的提高經(jīng)常被抵消。為了幫助解決這個(gè)問題,EclipseOpenJ9JVM提供了JITServer技術(shù),它將JIT編譯器從應(yīng)用程序中分離出來。對Java感興趣的同學(xué),可以參加Java培訓(xùn)來獲得知識和技能,以便快速上崗。
JITServer的性能特征使它成為云的理想解決方案。它允許用戶使用更小的容器來實(shí)現(xiàn)更高的應(yīng)用密度,從而為最終用戶和/或云提供商節(jié)省成本。因?yàn)橄薐IT編譯導(dǎo)致的CPU和內(nèi)存激增,所以用戶可以更輕松地為他/她的應(yīng)用程序提供資源。其他優(yōu)勢包括:加速時(shí)間、更好地控制編譯資源、增加可靠性(JIT編譯器錯(cuò)誤不再使應(yīng)用程序崩潰)以及在許多應(yīng)用程序?qū)嵗蟹謹(jǐn)偩幾g成本。
總而言之,在以下情況下,JITServer是一個(gè)很好的解決方案:
JVM需要在相對較短的時(shí)間內(nèi)編譯許多方法
JVM運(yùn)行在一個(gè)CPU/內(nèi)存受限的環(huán)境中,這個(gè)環(huán)境最不允許與其本地JIT編譯器共享資源
JITServer和客戶端虛擬機(jī)之間的網(wǎng)絡(luò)延遲相對較低(<1毫秒)
在java培訓(xùn)中,有理論知識+實(shí)踐項(xiàng)目課程,雙管齊下,學(xué)以致用,讓你深入淺出地學(xué)習(xí)java。
部署JITServer時(shí),請遵循以下建議以最大限度地提高性能:
將10-20個(gè)客戶端JVM連接到一個(gè)JITServer實(shí)例
將JITServer配置為至少使用1-2GB的RAM運(yùn)行
如果使用Kubernetes,將JITServer的vCPU“限制”設(shè)置為比“請求”大得多,以考慮到CPU使用高峰,并使用“sessionAffinity”來確保JVM客戶機(jī)總是連接到同一個(gè)JITServer
錯(cuò)開客戶機(jī)JVM的啟動,以便它們的編譯階段不會全部重疊
盡可能避免加密,因?yàn)檫@會增加通信開銷
啟用JITServerAOT緩存,以便可以存儲編譯供共享使用
Java一直在幫助企業(yè)實(shí)現(xiàn)業(yè)務(wù)目標(biāo),也有許多公司招聘Java開發(fā)人員,因此,我們看到很多初學(xué)者選擇參加java培訓(xùn)來開啟自己Java開發(fā)人員的職業(yè)人生,這是一個(gè)快速有效的學(xué)習(xí)方式,可以在短時(shí)間內(nèi)掌握java所需的技能,更好地找到工作。