{"id":86,"date":"2021-04-26T12:44:24","date_gmt":"2021-04-26T04:44:24","guid":{"rendered":"http:\/\/112.124.66.68\/?p=86"},"modified":"2021-04-26T12:44:24","modified_gmt":"2021-04-26T04:44:24","slug":"jvm%e5%86%85%e5%ad%98%e6%a8%a1%e5%9e%8b","status":"publish","type":"post","link":"https:\/\/sanlangcode.com\/index.php\/2021\/04\/26\/jvm%e5%86%85%e5%ad%98%e6%a8%a1%e5%9e%8b\/","title":{"rendered":"JVM\u5185\u5b58\u6a21\u578b"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-87\" src=\"http:\/\/112.124.66.68\/wp-content\/uploads\/2021\/04\/QQ\u622a\u56fe20210426124144-300x231.png\" alt=\"\" width=\"300\" height=\"231\" srcset=\"https:\/\/sanlangcode.com\/wp-content\/uploads\/2021\/04\/QQ\u622a\u56fe20210426124144-300x231.png 300w, https:\/\/sanlangcode.com\/wp-content\/uploads\/2021\/04\/QQ\u622a\u56fe20210426124144-768x592.png 768w, https:\/\/sanlangcode.com\/wp-content\/uploads\/2021\/04\/QQ\u622a\u56fe20210426124144-670x516.png 670w, https:\/\/sanlangcode.com\/wp-content\/uploads\/2021\/04\/QQ\u622a\u56fe20210426124144.png 888w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>\u5176\u4e2d\u5185\u5b58\u6a21\u578b,\u7c7b\u52a0\u8f7d\u673a\u5236,GC\u662f\u91cd\u70b9\u65b9\u9762.\u6027\u80fd\u8c03\u4f18\u90e8\u5206\u66f4\u504f\u5411\u5e94\u7528,\u91cd\u70b9\u7a81\u51fa\u5b9e\u8df5\u80fd\u529b.\u7f16\u8bd1\u5668\u4f18\u5316\u548c\u6267<br \/>\n\u884c\u6a21\u5f0f\u90e8\u5206\u504f\u5411\u4e8e\u7406\u8bba\u57fa\u7840,\u91cd\u70b9\u638c\u63e1\u77e5\u8bc6\u70b9.<br \/>\n\u9700\u4e86\u89e3\u5185\u5b58\u6a21\u578b\u5404\u90e8\u5206\u4f5c\u7528,\u4fdd\u5b58\u54ea\u4e9b\u6570\u636e.<br \/>\n\u7c7b\u52a0\u8f7d\u53cc\u4eb2\u59d4\u6d3e\u52a0\u8f7d\u673a\u5236,\u5e38\u7528\u52a0\u8f7d\u5668\u5206\u522b\u52a0\u8f7d\u54ea\u79cd\u7c7b\u578b\u7684\u7c7b.<br \/>\nGC\u5206\u4ee3\u56de\u6536\u7684\u601d\u60f3\u548c\u4f9d\u636e\u4ee5\u53ca\u4e0d\u540c\u5783\u573e\u56de\u6536\u7b97\u6cd5\u7684\u56de\u6536\u601d\u8def\u548c\u9002\u5408\u573a\u666f.<br \/>\n\u6027\u80fd\u8c03\u4f18\u5e38\u6709JVM\u4f18\u5316\u53c2\u6570\u4f5c\u7528,\u53c2\u6570\u8c03\u4f18\u7684\u4f9d\u636e,\u5e38\u7528\u7684JVM\u5206\u6790\u5de5\u5177\u80fd\u5206\u6790\u54ea\u4e9b\u95ee\u9898\u4ee5\u53ca\u4f7f\u7528\u65b9\u6cd5.<br \/>\n\u6267\u884c\u6a21\u5f0f\u89e3\u91ca\/\u7f16\u8bd1\/\u6df7\u5408\u6a21\u5f0f\u7684\u4f18\u7f3a\u70b9,Java7\u63d0\u4f9b\u7684\u5206\u5c42\u7f16\u8bd1\u6280\u672f,JIT\u5373\u65f6\u7f16\u8bd1\u6280\u672f,OSR\u6808\u4e0a\u66ff\u6362,C1\/C2<br \/>\n\u7f16\u8bd1\u5668\u9488\u5bf9\u7684\u573a\u666f,C2\u9488\u5bf9\u7684\u662fserver\u6a21\u5f0f,\u4f18\u5316\u66f4\u6fc0\u8fdb.\u65b0\u6280\u672f\u65b9\u9762Java10\u7684graal\u7f16\u8bd1\u5668<br \/>\n\u7f16\u8bd1\u5668\u4f18\u5316javac\u7684\u7f16\u8bd1\u8fc7\u7a0b,ast\u62bd\u8c61\u8bed\u6cd5\u6811,\u7f16\u8bd1\u5668\u4f18\u5316\u548c\u8fd0\u884c\u5668\u4f18\u5316.<\/p>\n<p>\u8be6\u89e3\uff1a<br \/>\n1\u3001JVM\u5185\u5b58\u6a21\u578b\uff1a<br \/>\n\u7ebf\u7a0b\u72ec\u5360:\u6808,\u672c\u5730\u65b9\u6cd5\u6808,\u7a0b\u5e8f\u8ba1\u6570\u5668<br \/>\n\u7ebf\u7a0b\u5171\u4eab:\u5806,\u65b9\u6cd5\u533a<\/p>\n<p>2\u3001\u6808\uff1a<br \/>\n\u53c8\u79f0\u65b9\u6cd5\u6808,\u7ebf\u7a0b\u79c1\u6709\u7684,\u7ebf\u7a0b\u6267\u884c\u65b9\u6cd5\u662f\u90fd\u4f1a\u521b\u5efa\u4e00\u4e2a\u6808\u9635,\u7528\u6765\u5b58\u50a8\u5c40\u90e8\u53d8\u91cf\u8868,\u64cd\u4f5c\u6808,\u52a8\u6001\u94fe\u63a5,\u65b9\u6cd5<br \/>\n\u51fa\u53e3\u7b49\u4fe1\u606f.\u8c03\u7528\u65b9\u6cd5\u65f6\u6267\u884c\u5165\u6808,\u65b9\u6cd5\u8fd4\u56de\u5f0f\u6267\u884c\u51fa\u6808.<\/p>\n<p>3\u3001\u672c\u5730\u65b9\u6cd5\u6808<br \/>\n\u4e0e\u6808\u7c7b\u4f3c,\u4e5f\u662f\u7528\u6765\u4fdd\u5b58\u6267\u884c\u65b9\u6cd5\u7684\u4fe1\u606f.\u6267\u884cJava\u65b9\u6cd5\u662f\u4f7f\u7528\u6808,\u6267\u884cNative\u65b9\u6cd5\u65f6\u4f7f\u7528\u672c\u5730\u65b9\u6cd5\u6808.<\/p>\n<p>4\u3001\u7a0b\u5e8f\u8ba1\u6570\u5668<br \/>\n\u4fdd\u5b58\u7740\u5f53\u524d\u7ebf\u7a0b\u6267\u884c\u7684\u5b57\u8282\u7801\u4f4d\u7f6e,\u6bcf\u4e2a\u7ebf\u7a0b\u5de5\u4f5c\u65f6\u90fd\u6709\u72ec\u7acb\u7684\u8ba1\u6570\u5668,\u53ea\u4e3a\u6267\u884cJava\u65b9\u6cd5\u670d\u52a1,\u6267\u884c<br \/>\nNative\u65b9\u6cd5\u65f6,\u7a0b\u5e8f\u8ba1\u6570\u5668\u4e3a\u7a7a.<\/p>\n<p>5\u3001\u5806<br \/>\nJVM\u5185\u5b58\u7ba1\u7406\u6700\u5927\u7684\u4e00\u5757,\u5bf9\u88ab\u7ebf\u7a0b\u5171\u4eab,\u76ee\u7684\u662f\u5b58\u653e\u5bf9\u8c61\u7684\u5b9e\u4f8b,\u51e0\u4e4e\u6240\u6b32\u7684\u5bf9\u8c61\u5b9e\u4f8b\u90fd\u4f1a\u653e\u5728\u8fd9\u91cc,\u5f53\u5806<br \/>\n\u6ca1\u6709\u53ef\u7528\u7a7a\u95f4\u65f6,\u4f1a\u629b\u51faOOM\u5f02\u5e38.\u6839\u636e\u5bf9\u8c61\u7684\u5b58\u6d3b\u5468\u671f\u4e0d\u540c,JVM\u628a\u5bf9\u8c61\u8fdb\u884c\u5206\u4ee3\u7ba1\u7406,\u7531\u5783\u573e\u56de\u6536\u5668\u8fdb\u884c<br \/>\n\u5783\u573e\u7684\u56de\u6536\u7ba1\u7406<\/p>\n<p>6\u3001\u65b9\u6cd5\u533a\uff1a<br \/>\n\u53c8\u79f0\u975e\u5806\u533a,\u7528\u4e8e\u5b58\u50a8\u5df2\u88ab\u865a\u62df\u673a\u52a0\u8f7d\u7684\u7c7b\u4fe1\u606f,\u5e38\u91cf,\u9759\u6001\u53d8\u91cf,\u5373\u65f6\u7f16\u8bd1\u5668\u4f18\u5316\u540e\u7684\u4ee3\u7801\u7b49\u6570\u636e.1.7\u7684\u6c38<br \/>\n\u4e45\u4ee3\u548c1.8\u7684\u5143\u7a7a\u95f4\u90fd\u662f\u65b9\u6cd5\u533a\u7684\u4e00\u79cd\u5b9e\u73b0<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5176\u4e2d\u5185\u5b58\u6a21\u578b,\u7c7b\u52a0\u8f7d\u673a\u5236,GC\u662f&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":325,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2,5],"tags":[],"class_list":["post-86","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-java","category-jvm"],"_links":{"self":[{"href":"https:\/\/sanlangcode.com\/index.php\/wp-json\/wp\/v2\/posts\/86","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sanlangcode.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sanlangcode.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sanlangcode.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sanlangcode.com\/index.php\/wp-json\/wp\/v2\/comments?post=86"}],"version-history":[{"count":0,"href":"https:\/\/sanlangcode.com\/index.php\/wp-json\/wp\/v2\/posts\/86\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sanlangcode.com\/index.php\/wp-json\/wp\/v2\/media\/325"}],"wp:attachment":[{"href":"https:\/\/sanlangcode.com\/index.php\/wp-json\/wp\/v2\/media?parent=86"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sanlangcode.com\/index.php\/wp-json\/wp\/v2\/categories?post=86"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sanlangcode.com\/index.php\/wp-json\/wp\/v2\/tags?post=86"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}