做者:肥朝java
原文連接:https://mp.weixin.qq.com/s/4wJ6ANal0blLOseasfIuVw面試
考慮到可能有部分粉絲對JVM參數不清楚,因此咱們參照中學的授課模式,給你們作一些知識上的普及。理論上,JVM參數主要分爲三類併發
該類型參數在JDK各個版本之間穩定,不多有大的變化。好比查看版本號分佈式
java -version
這些用的很少,看看就好。 // 解釋執行 -Xint // 第一次使用就編譯成本地代碼 -Xcomp // 混合模式 -Xmixed
-XX:+ 或者 - 某個屬性值,+ 表示開啓,-表示關閉。例如: // 打印GC詳細信息 -XX:+PrintGCDetails // 不打印GC詳細信息 -XX:-PrintGCDetails
-XX:屬性key=屬性值value,例如 // 設置Metaspace的大小 -XX:MetaspaceSize=1024m
好了,如今課講完了,那麼咱們來兩道經典的JVM面試題。高併發
在線上生產環境,JVM的Xms
和Xmx
通常設置成_____
比例。緣由是____________
。spa
咱們常設置的JVM參數Xms
和Xmx
,屬於下列哪一種類型的JVM參數?code
A.標配參數blog
B.X參數教程
C.XX參數get
D.以上均不是
你們看這兩道題,是否是有中學試卷的味道?上課教的東西,到了考試就全變樣了,美名爲教材內容考點變形,變形能夠,可這都變得面目全非了啊!高三的時候,老師告訴咱們,每一年高考題他都所有命中。那一刻,我覺得清華北大穩了,都準備要發朋友圈裝逼了!
後面才知道,他的意思是,他把課本的內容都給咱們講了,而後高考的內容都源於課本,因此他每一年都所有命中。
言歸正傳,那麼咱們來解答一下這兩道題。
1.Xms
和Xmx
通常設置成1:1
比例,緣由是避免在GC後調整堆大小帶來的壓力
。
2.選C,由於-Xms
等價於-XX:InitialHeapSize
,-Xmx
等價於-XX:MaxHeapSize
。因此他們都是XX
類型參數。易錯選型是B。
這兩道題你都答對了嗎?或者你有什麼中學的回憶,也歡迎留言告訴肥朝。
免費Java高級資料須要本身領取,涵蓋了Java、Redis、MongoDB、MySQL、Zookeeper、Spring Cloud、Dubbo高併發分佈式等教程,一共30G。
傳送門:https://mp.weixin.qq.com/s/JzddfH-7yNudmkjT0IRL8Q