<script type="application/ld+json">{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://www.simcentric.com/tc/"},{"@type":"ListItem","position":2,"name":"記憶體碎片化如何影響伺服器的長期穩定性","item":"https://www.simcentric.com/hong-kong-dedicated-server/how-memory-fragmentation-affects-long-term-server-stability/"}]}</script> {"id":33747,"date":"2026-08-02T08:00:20","date_gmt":"2026-08-02T00:00:20","guid":{"rendered":"https:\/\/www.simcentric.com\/?p=33747"},"modified":"2026-07-31T11:09:29","modified_gmt":"2026-07-31T03:09:29","slug":"how-memory-fragmentation-affects-long-term-server-stability","status":"publish","type":"post","link":"https:\/\/www.simcentric.com\/tc\/hong-kong-dedicated-server-tc\/how-memory-fragmentation-affects-long-term-server-stability\/","title":{"rendered":"\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u5982\u4f55\u5f71\u97ff\u4f3a\u670d\u5668\u7684\u9577\u671f\u7a69\u5b9a\u6027"},"content":{"rendered":"<div class=\"wpb-content-wrapper\"><p>[vc_row][vc_column][vc_column_text css=&#8221;&#8221;]\u4f60\u5728\u76e3\u63a7<a href=\"https:\/\/www.simcentric.com\/tc\/products\/dedicated-server-hk\/\" target=\"_blank\" rel=\"noopener\">\u751f\u7522\u74b0\u5883\u4f3a\u670d\u5668<\/a>\u6642\uff0c\u660e\u660e\u770b\u5230\u9084\u6709\u6578 GB \u7684\u7a7a\u9592 RAM\uff0c\u61c9\u7528\u7a0b\u5f0f\u537b\u7a81\u7136\u56e0\u8a18\u61b6\u9ad4\u4e0d\u8db3\u932f\u8aa4\u800c\u5d29\u6f70\uff0c\u6216\u51fa\u73fe\u56b4\u91cd\u7684<a href=\"https:\/\/www.simcentric.com\/tc\/japan-dedicated-server-tc\/resolve-high-latency-and-stuttering-with-streaming-servers\/\" target=\"_blank\" rel=\"noopener\">\u5ef6\u9072\u5c16\u5cf0<\/a>\u3002\u8cc7\u6599\u7684\u6301\u7e8c\u5206\u914d\u8207\u91cb\u653e\uff0c\u6703\u96a8\u8457\u6642\u9593\u63a8\u79fb\u9010\u6b65\u7834\u58de\u9023\u7e8c\u8a18\u61b6\u9ad4\u5340\u584a\uff0c\u628a\u5b83\u5011\u5207\u5206\u6210\u8a31\u591a\u7d30\u5c0f\u4e14\u96e3\u4ee5\u5229\u7528\u7684\u788e\u7247\u3002<\/p>\n<p>\u5de5\u7a0b\u5e2b\u5c07\u9019\u7a2e\u73fe\u8c61\u7a31\u70ba\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u3002\u672a\u4f7f\u7528\u7684\u4f4d\u5143\u7d44\u6703\u6563\u843d\u5728\u7cfb\u7d71\u4f4d\u5740\u7a7a\u9593\u4e2d\uff0c\u5373\u4f7f\u7e3d\u53ef\u7528\u8a18\u61b6\u9ad4\u4ecd\u7136\u5f88\u9ad8\uff0cLinux \u6838\u5fc3\u4e5f\u53ef\u80fd\u7121\u6cd5\u6eff\u8db3\u8f03\u5927\u7684\u8a18\u61b6\u9ad4\u7533\u8acb\u3002<\/p>\n<h2><strong>\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u7684\u904b\u4f5c\u6a5f\u5236<\/strong><\/h2>\n<p>\u8981\u7406\u89e3\u4f3a\u670d\u5668\u8a18\u61b6\u9ad4\u662f\u5982\u4f55\u9010\u6b65\u300c\u52a3\u5316\u300d\u7684\uff0c\u53ef\u4ee5\u5f9e\u5169\u500b\u6838\u5fc3\u904e\u7a0b\u8457\u624b\uff1a\u5167\u90e8\u5206\u914d\u6548\u7387\u4ee5\u53ca\u6838\u5fc3\u7a7a\u9593\u7ba1\u7406\u3002<\/p>\n<h3>\u5167\u90e8\u788e\u7247\u8207\u5916\u90e8\u788e\u7247<\/h3>\n<p>\u8a18\u61b6\u9ad4\u5206\u914d\u554f\u984c\u901a\u5e38\u5206\u70ba\u5169\u985e\uff1a<\/p>\n<div class=\"qc-default-table-wrapper \">\n<table style=\"min-width: 75px;\">\n<colgroup>\n<col style=\"min-width: 25px;\" \/>\n<col style=\"min-width: 25px;\" \/>\n<col style=\"min-width: 25px;\" \/> <\/colgroup>\n<tbody>\n<tr>\n<th colspan=\"1\" rowspan=\"1\">\u788e\u7247\u985e\u578b<\/th>\n<th colspan=\"1\" rowspan=\"1\">\u7522\u751f\u65b9\u5f0f<\/th>\n<th colspan=\"1\" rowspan=\"1\">\u7cfb\u7d71\u5f71\u97ff<\/th>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><strong>\u5167\u90e8\u788e\u7247<\/strong><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u4f60\u5206\u914d\u4e86\u8a18\u61b6\u9ad4\u5340\u584a\uff0c\u4f46\u5be6\u969b\u8cc7\u6599\u6c92\u6709\u586b\u6eff\u6574\u500b\u7a7a\u9593\u3002<\/td>\n<td colspan=\"1\" rowspan=\"1\">\u5340\u584a\u5167\u591a\u9918\u7684\u7a7a\u9592\u7a7a\u9593\u6703\u88ab\u9592\u7f6e\uff0c\u7121\u6cd5\u4f7f\u7528\u3002<\/td>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><strong>\u5916\u90e8\u788e\u7247<\/strong><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u4f60\u9577\u6642\u9593\u6301\u7e8c\u5730\u5206\u914d\u8207\u91cb\u653e\u52d5\u614b\u7269\u4ef6\u3002<\/td>\n<td colspan=\"1\" rowspan=\"1\">\u7e3d\u7a7a\u9592\u8a18\u61b6\u9ad4\u4f9d\u7136\u5f88\u591a\uff0c\u4f46\u7a7a\u9593\u88ab\u4e0d\u53ef\u7528\u7684\u5c0f\u9593\u9699\u5206\u5272\u958b\u4f86\u3002<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>\u5167\u90e8\u788e\u7247\u6d6a\u8cbb\u7684\u662f\u5df2\u5206\u914d\u5340\u584a\u5167\u90e8\u7684\u4f4d\u5143\u7d44\uff1b\u5916\u90e8\u788e\u7247\u5247\u6703\u628a\u7a7a\u9592 RAM \u6253\u6563\u6210\u8a31\u591a\u5fae\u5c0f\u9593\u9699\uff0c\u9032\u800c\u59a8\u7919\u8f03\u5927\u8a18\u61b6\u9ad4\u5340\u584a\u7684\u5206\u914d\u3002<\/p>\n<h3>\u9577\u671f\u5feb\u53d6\u4e2d\u7684\u5806\u788e\u7247<\/h3>\n<p>\u9577\u6642\u9593\u904b\u884c\u7684\u61c9\u7528\u7a0b\u5f0f\u6703\u5728\u8a18\u61b6\u9ad4\u5feb\u53d6\u4e2d\u5b58\u653e\u4e0d\u540c\u5927\u5c0f\u7684\u7269\u4ef6\uff0c\u4ee5\u5be6\u73fe\u5feb\u901f\u5b58\u53d6\u3002\u4f60\u53ef\u80fd\u6703\u5c07\u4f7f\u7528\u8005\u5de5\u4f5c\u968e\u6bb5\u3001\u52d5\u614b\u8cc7\u6599\u5eab\u67e5\u8a62\u7d50\u679c\uff0c\u6216 API \u56de\u61c9\u5b58\u653e\u5728 RAM \u4e2d\u3002<\/p>\n<p>\u61c9\u7528\u7a0b\u5f0f\u6703\u4e0d\u65b7\u5efa\u7acb\u548c\u522a\u9664\u9019\u4e9b\u5927\u5c0f\u4e0d\u4e00\u7684\u5feb\u53d6\u7269\u4ef6\u3002\u9019\u6a23\u7684\u6301\u7e8c\u5faa\u74b0\u6703\u628a\u5806\u7a7a\u9593\u5207\u5272\u6210\u8a31\u591a\u96f6\u6563\u7684\u5c0f\u578b\u7a7a\u9592\u5340\u57df\u3002\u7d93\u904e\u6578\u9031\u751a\u81f3\u6578\u6708\u5f8c\uff0c\u5373\u4f7f\u7cfb\u7d71\u4e2d\u4ecd\u7136\u6709\u6578 GB \u53ef\u7528 RAM\uff0c\u7a0b\u5f0f\u4e5f\u53ef\u80fd\u7121\u6cd5\u70ba\u65b0\u7684\u5927\u578b\u7269\u4ef6\u627e\u5230\u4e00\u584a\u9023\u7e8c\u7a7a\u9593\u3002<\/p>\n<h3>Linux \u6838\u5fc3\u9801\u9762\u5206\u914d\u5668\u7684\u6a5f\u5236<\/h3>\n<p>\u7576\u61c9\u7528\u7a0b\u5f0f\u8acb\u6c42\u8a18\u61b6\u9ad4\u6642\uff0c\u5925\u4f34\u5206\u914d\u5668\uff08buddy allocator\uff09\u6703\u4f9d\u7167\u7279\u5b9a\u6d41\u7a0b\u904b\u4f5c\uff1a<\/p>\n<ol>\n<li><strong>\u6aa2\u67e5\u76ee\u6a19\u968e\u6578\u7a7a\u9592\u93c8\u7d50\u4e32\u5217<\/strong>\uff1a\u5148\u5728\u8207\u6240\u9700\u5927\u5c0f\u5b8c\u5168\u5339\u914d\u7684 order \u7a7a\u9592\u93c8\u7d50\u4e32\u5217\u4e2d\u67e5\u627e\u3002\u82e5\u5b58\u5728\u5408\u9069\u5340\u584a\uff0c\u7cfb\u7d71\u6703\u7acb\u5373\u5b8c\u6210\u5206\u914d\u3002<\/li>\n<li><strong>\u6aa2\u67e5\u66f4\u9ad8\u968e\u93c8\u7d50\u4e32\u5217<\/strong>\uff1a\u5982\u679c\u76ee\u6a19 order \u93c8\u7d50\u4e32\u5217\u70ba\u7a7a\uff0c\u5c31\u7e7c\u7e8c\u67e5\u627e\u66f4\u5927\u7684\u7a7a\u9592\u5340\u584a\u93c8\u7d50\u4e32\u5217\u3002<\/li>\n<li><strong>\u905e\u8ff4\u62c6\u5206<\/strong>\uff1a\u5c07\u8f03\u5927\u7684\u5340\u584a\u62c6\u5206\u70ba\u5169\u500b\u5927\u5c0f\u76f8\u7b49\u7684\u300c\u5925\u4f34\u5340\u584a\uff08buddies\uff09\u300d\u3002\u6838\u5fc3\u4f7f\u7528\u5176\u4e2d\u4e00\u534a\u6eff\u8db3\u8acb\u6c42\uff0c\u4e26\u5c07\u5269\u9918\u4e00\u534a\u653e\u56de\u8f03\u4f4e order \u7684\u7a7a\u9592\u93c8\u7d50\u4e32\u5217\u3002<\/li>\n<\/ol>\n<p>\u9ad8\u8ca0\u8f09\u4f3a\u670d\u5668\u6703\u4e0d\u65b7\u62c6\u5206\u9019\u4e9b\u8a18\u61b6\u9ad4\u5340\u584a\uff0c\u96a8\u8457\u904b\u884c\u6642\u9593\u589e\u9577\uff0c\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u6703\u9032\u4e00\u6b65\u52a0\u5287\u3002<\/p>\n<h2><strong>\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u5c0d\u4f3a\u670d\u5668\u7a69\u5b9a\u6027\u7684\u5f71\u97ff<\/strong><\/h2>\n<p>\u56b4\u91cd\u7684\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u6703\u5728\u4e0d\u77e5\u4e0d\u89ba\u4e2d\u6301\u7e8c\u524a\u5f31\u7cfb\u7d71\u6548\u80fd\u3002\u4f60\u4e5f\u8a31\u6703\u770b\u5230\u7e3d\u7a7a\u9592 RAM \u4f9d\u7136\u5f88\u9ad8\uff0c\u4f46\u4f3a\u670d\u5668\u5be6\u969b\u4e0a\u5df2\u7d93\u51fa\u73fe\u96b1\u85cf\u7684\u6548\u80fd\u74f6\u9838\u8207\u904b\u884c\u4e0d\u7a69\u5b9a\u554f\u984c\u3002<\/p>\n<h3>\u5206\u914d\u8b8a\u6162\u8207 RAM \u6d6a\u8cbb<\/h3>\n<p>\u7576\u8a18\u61b6\u9ad4\u88ab\u5206\u88c2\u6210\u5927\u91cf\u7d30\u5c0f\u4e14\u4e0d\u9023\u7e8c\u7684\u5340\u584a\u6642\uff0c\u4f3a\u670d\u5668\u5c31\u6703\u5931\u53bb\u9ad8\u6548\u7387\u3002Linux \u6838\u5fc3\u5fc5\u9808\u6383\u63cf\u591a\u500b\u7a7a\u9592\u93c8\u7d50\u4e32\u5217\uff0c\u624d\u80fd\u70ba\u65b0\u884c\u7a0b\u627e\u5230\u5408\u9069\u7684\u5340\u584a\u3002\u9019\u7a2e\u984d\u5916\u641c\u5c0b\u6703\u5ef6\u9577\u5206\u914d\u6642\u9593\uff0c\u4e26\u63d0\u9ad8\u61c9\u7528\u7a0b\u5f0f\u5ef6\u9072\u3002<\/p>\n<blockquote><p><strong>\u95dc\u9375\u7d50\u8ad6\uff1a<\/strong>\u5df2\u5360\u7528\u9801\u9762\u4e4b\u9593\u7684\u4e0d\u53ef\u7528\u9593\u9699\u6703\u5f62\u6210\u300c\u64f1\u6dfa\u5bb9\u91cf\u300d\u3002\u7cfb\u7d71\u7121\u6cd5\u628a\u9019\u4e9b\u5206\u6563\u7684\u5c0f\u9593\u9699\u91cd\u65b0\u62fc\u63a5\u8d77\u4f86\u6eff\u8db3\u8f03\u5927\u7684\u5206\u914d\u8acb\u6c42\uff0c\u56e0\u6b64\u53ef\u5be6\u969b\u5229\u7528\u7684 RAM \u5bb9\u91cf\u6703\u986f\u8457\u4e0b\u964d\u3002<\/p><\/blockquote>\n<p>\u4e0b\u8868\u5c55\u793a\u4e86\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u5982\u4f55\u5f71\u97ff\u5206\u914d\u901f\u5ea6\u8207 RAM \u5229\u7528\u6548\u7387\uff1a<\/p>\n<div class=\"qc-default-table-wrapper \">\n<table style=\"min-width: 100px;\">\n<colgroup>\n<col style=\"min-width: 25px;\" \/>\n<col style=\"min-width: 25px;\" \/>\n<col style=\"min-width: 25px;\" \/>\n<col style=\"min-width: 25px;\" \/> <\/colgroup>\n<tbody>\n<tr>\n<th colspan=\"1\" rowspan=\"1\">\u72c0\u614b<\/th>\n<th colspan=\"1\" rowspan=\"1\">\u5206\u914d\u641c\u5c0b\u6642\u9593<\/th>\n<th colspan=\"1\" rowspan=\"1\">\u53ef\u7528\u5bb9\u91cf<\/th>\n<th colspan=\"1\" rowspan=\"1\">\u6574\u9ad4\u4f3a\u670d\u5668\u6548\u7387<\/th>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><strong>\u9023\u7e8c\u8a18\u61b6\u9ad4<\/strong><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u5feb\uff08\u76f4\u63a5\u547d\u4e2d Buddy \u93c8\u7d50\u4e32\u5217\uff09<\/td>\n<td colspan=\"1\" rowspan=\"1\">\u9ad8\uff0895\u201399%\uff09<\/td>\n<td colspan=\"1\" rowspan=\"1\">\u6700\u4f73<\/td>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><strong>\u8f15\u5ea6\u788e\u7247\u5316<\/strong><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u4e2d\u7b49\uff08\u9700\u6383\u63cf\u591a\u500b\u93c8\u7d50\u4e32\u5217\uff09<\/td>\n<td colspan=\"1\" rowspan=\"1\">\u4e2d\u7b49\uff0870\u201385%\uff09<\/td>\n<td colspan=\"1\" rowspan=\"1\">\u53ef\u63a5\u53d7<\/td>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><strong>\u56b4\u91cd\u788e\u7247\u5316<\/strong><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u6162\uff08\u6df1\u5ea6\u904d\u6b77\uff09<\/td>\n<td colspan=\"1\" rowspan=\"1\">\u4f4e\uff08\u4f4e\u65bc 50%\uff09<\/td>\n<td colspan=\"1\" rowspan=\"1\">\u8f03\u5dee<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h3>\u6838\u5fc3\u8a18\u61b6\u9ad4\u58d3\u7e2e\u5f15\u767c\u7684\u5ef6\u9072\u5c16\u5cf0<\/h3>\n<p>\u7576\u5925\u4f34\u5206\u914d\u5668\u7121\u6cd5\u627e\u5230\u9023\u7e8c\u7a7a\u9592\u9801\u9762\u6642\uff0cLinux \u6838\u5fc3\u6703\u89f8\u767c<strong>\u76f4\u63a5\u8a18\u61b6\u9ad4\u58d3\u7e2e\uff08direct memory compaction\uff09<\/strong>\u3002\u6838\u5fc3\u6703\u5617\u8a66\u5728\u5be6\u9ad4 RAM \u4e2d\u79fb\u52d5\u5df2\u5206\u914d\u9801\u9762\uff0c\u4ee5\u6574\u7406\u51fa\u66f4\u5927\u7684\u9023\u7e8c\u8a18\u61b6\u9ad4\u5340\u584a\u3002<\/p>\n<pre><code>[ \u5df2\u5206\u914d\u9801\u9762 ] [ \u7a7a\u9592\u7a7a\u9593 ] [ \u5df2\u5206\u914d\u9801\u9762 ] [ \u7a7a\u9592\u7a7a\u9593 ]\r\n       \u2502                                \u2502\r\n       \u25bc\uff08\u6838\u5fc3\u58d3\u7e2e\u904e\u7a0b\uff09               \u25bc\r\n[ \u5df2\u5206\u914d\u9801\u9762 ] [ \u5df2\u5206\u914d\u9801\u9762 ] [ \u7a7a\u9592\u7a7a\u9593 ] [ \u7a7a\u9592\u7a7a\u9593 ]<\/code><\/pre>\n<p>\u9019\u4e00\u58d3\u7e2e\u904e\u7a0b\u6703\u6d88\u8017\u5927\u91cf CPU \u8cc7\u6e90\uff0c\u4e26\u5e72\u64fe\u6b63\u5e38\u904b\u4f5c\uff1a<\/p>\n<ul>\n<li><strong>\u9801\u9762\u56de\u6536<\/strong>\uff1a\u6838\u5fc3\u6383\u63cf\u6d3b\u8e8d\u8a18\u61b6\u9ad4\uff0c\u5c0b\u627e\u53ef\u9077\u79fb\u9801\u9762\u3002<\/li>\n<li><strong>\u540c\u6b65\u66ab\u505c<\/strong>\uff1a\u5728\u79fb\u52d5\u9801\u9762\u6642\uff0c\u6838\u5fc3\u6703\u66ab\u505c\u4f60\u7684\u61c9\u7528\u7a0b\u5f0f\u57f7\u884c\u7dd2\u3002<\/li>\n<li><strong>\u5feb\u53d6\u5931\u6548<\/strong>\uff1a\u983b\u7e41\u7684\u9801\u9762\u79fb\u52d5\u6703\u6c96\u5237 CPU \u5feb\u53d6\u4e26\u964d\u4f4e\u5b58\u53d6\u901f\u5ea6\u3002<\/li>\n<\/ul>\n<p>\u9019\u4e9b\u6838\u5fc3\u884c\u70ba\u6703\u5728\u751f\u7522\u74b0\u5883\u61c9\u7528\u4e2d\u9020\u6210\u56b4\u91cd\u7684\u5c3e\u7aef\u5ef6\u9072\u5c16\u5cf0\u3002\u4f60\u7684 Web \u670d\u52d9\u53ef\u80fd\u6703\u5728\u6fc0\u70c8\u58d3\u7e2e\u9031\u671f\u4e2d\uff0c\u5f9e\u539f\u672c\u6beb\u79d2\u7d1a\u56de\u61c9\u9661\u7136\u4e0a\u5347\u5230\u79d2\u7d1a\u3002<\/p>\n<h3>\u4f4e\u9918\u88d5\u7cfb\u7d71\u4e2d\u7684 OOM \u5d29\u6f70<\/h3>\n<p>\u5728\u8a18\u61b6\u9ad4\u9918\u88d5\u6709\u9650\u7684\u7cfb\u7d71\u4e2d\uff0c\u56b4\u91cd\u788e\u7247\u5316\u53ef\u80fd\u5f15\u767c\u707d\u96e3\u6027\u6545\u969c\u3002\u4f60\u53ef\u80fd\u5728\u76e3\u63a7\u9762\u677f\u4e2d\u770b\u5230\u4f3a\u670d\u5668\u4ecd\u6709 30% \u751a\u81f3\u66f4\u591a\u7a7a\u9592 RAM\uff0c\u4f46\u61c9\u7528\u7a0b\u5f0f\u537b\u7a81\u7136\u56e0 Out-Of-Memory\uff08OOM\uff09\u7570\u5e38\u800c\u5d29\u6f70\u3002<\/p>\n<p>\u9019\u662f\u56e0\u70ba\u61c9\u7528\u7a0b\u5f0f\u8acb\u6c42\u4e86\u4e00\u500b\u9ad8\u968e\u9023\u7e8c\u5340\u584a\uff0c\u4f8b\u5982 order-3\uff0832KB\uff09\u6216 order-4\uff0864KB\uff09\u9801\u6846\u3002\u6b64\u6642\u6838\u5fc3\u6703\u5617\u8a66\u76f4\u63a5\u58d3\u7e2e\uff0c\u4f46\u6d3b\u8e8d\u4e14\u88ab\u56fa\u5b9a\uff08pinned\uff09\u7684\u5340\u584a\u6703\u963b\u6b62\u9801\u9762\u9077\u79fb\u3002<\/p>\n<p>\u5982\u679c\u58d3\u7e2e\u4ecd\u7136\u7121\u6cd5\u6574\u7406\u51fa\u9023\u7e8c\u7a7a\u9593\uff0cLinux \u6838\u5fc3\u5c31\u6703\u89f8\u767c OOM killer\u3002OOM killer \u6703\u9078\u64c7\u4e26\u7d42\u6b62\u95dc\u9375\u61c9\u7528\u7a0b\u5f0f\u884c\u7a0b\u4ee5\u56de\u6536\u7cfb\u7d71\u8cc7\u6e90\uff0c\u5f9e\u800c\u5c0e\u81f4\u6beb\u7121\u9810\u8b66\u7684\u670d\u52d9\u4e2d\u65b7\u3002<\/p>\n<h2><strong>\u5728\u751f\u7522\u74b0\u5883\u4e2d\u8a3a\u65b7\u8a18\u61b6\u9ad4\u788e\u7247\u5316<\/strong><\/h2>\n<p>\u4f60\u5fc5\u9808\u5728\u61c9\u7528\u7a0b\u5f0f\u5d29\u6f70\u4e4b\u524d\u8b58\u5225\u4f3a\u670d\u5668\u554f\u984c\u3002Linux \u539f\u751f\u547d\u4ee4\u53ef\u4ee5\u5e6b\u52a9\u4f60\u6aa2\u67e5\u5be6\u9ad4\u8a18\u61b6\u9ad4\u914d\u7f6e\uff0c\u4e26\u5373\u6642\u5075\u6e2c\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u3002<\/p>\n<h3>\u6aa2\u67e5 Proc Buddyinfo \u8207 Meminfo<\/h3>\n<p>\u4f60\u53ef\u4ee5\u8b80\u53d6 <code>\/proc\/buddyinfo<\/code> \u6a94\u6848\u4f86\u67e5\u770b\u53ef\u7528\u7684\u9023\u7e8c\u9801\u9762\u5340\u584a\u3002\u8a72\u6a94\u6848\u6703\u986f\u793a\u5404\u500b\u8a18\u61b6\u9ad4\u5340\u57df\u4e2d\u6bcf\u500b order \u7684\u7a7a\u9592\u5340\u584a\u6578\u91cf\u3002\u5982\u679c\u4f4e\u968e\u6578\u91cf\u5f88\u591a\u800c\u9ad8\u968e\u70ba 0\uff0c\u5c31\u4ee3\u8868\u5be6\u9ad4\u8a18\u61b6\u9ad4\u5df2\u7d93\u51fa\u73fe\u56b4\u91cd\u788e\u7247\u5316\u3002<\/p>\n<pre><code>cat \/proc\/buddyinfo<\/code><\/pre>\n<p>\u63a5\u8457\uff0c\u67e5\u770b <code>\/proc\/meminfo<\/code> \u4ee5\u6aa2\u67e5\u7e3d\u5bb9\u91cf\u3002\u91cd\u9ede\u95dc\u6ce8 <code>MemAvailable<\/code> \u548c <code>SUnreclaim<\/code>\u3002\u5982\u679c\u7a7a\u9592 RAM \u8207\u53ef\u5be6\u969b\u4f7f\u7528\u7a7a\u9593\u4e4b\u9593\u5b58\u5728\u8f03\u5927\u5dee\u8ddd\uff0c\u5c31\u8868\u793a\u5206\u6563\u7684\u8a18\u61b6\u9ad4\u9593\u9699\u6b63\u5728\u963b\u7919\u5206\u914d\u8acb\u6c42\u3002<\/p>\n<h3>\u76e3\u63a7\u9801\u9762\u5206\u914d\u5931\u6557<\/h3>\n<p>Linux \u6838\u5fc3\u6703\u76f4\u63a5\u5c07\u5206\u914d\u554f\u984c\u8a18\u9304\u5230\u7cfb\u7d71\u65e5\u8a8c\u4e2d\u3002\u4f60\u53ef\u4ee5\u4f7f\u7528 <code>dmesg<\/code> \u6307\u4ee4\u641c\u5c0b page allocation failure \u8b66\u544a\uff1a<\/p>\n<pre><code>dmesg -T | grep -i \"page allocation failure\"<\/code><\/pre>\n<blockquote><p><strong>\u4e3b\u52d5\u63d0\u793a\uff1a<\/strong>\u9019\u4e9b\u65e5\u8a8c\u9805\u6703\u986f\u793a\u5931\u6557\u7684\u5177\u9ad4\u5206\u914d order\u3002\u5b83\u5011\u80fd\u5920\u8b49\u660e\uff1a\u5373\u4f7f\u7e3d RAM \u770b\u8d77\u4f86\u5145\u8db3\uff0c\u7cfb\u7d71\u4e5f\u7f3a\u4e4f\u8db3\u5920\u7684\u9023\u7e8c\u8a18\u61b6\u9ad4\u5340\u584a\u3002<\/p><\/blockquote>\n<h3>\u900f\u904e Vmstat \u548c Sar \u8ffd\u8e64\u7cfb\u7d71\u8da8\u52e2<\/h3>\n<p>\u4f60\u53ef\u4ee5\u900f\u904e\u8ffd\u8e64\u6838\u5fc3\u8a18\u61b6\u9ad4\u6307\u6a19\u4f86\u76e3\u63a7\u9577\u671f\u7cfb\u7d71\u5065\u5eb7\u72c0\u6cc1\u3002<code>\/proc\/vmstat<\/code> \u6a94\u6848\u63d0\u4f9b\u4e86\u4e00\u7cfb\u5217\u8a08\u6578\u5668\u7d71\u8a08\u8cc7\u8a0a\uff0c\u53ef\u7528\u65bc\u8b58\u5225\u56b4\u91cd\u7684\u58d3\u7e2e\u6d3b\u52d5\u8207\u5206\u914d\u5ef6\u9072\u3002<\/p>\n<p>\u4f60\u61c9\u91cd\u9ede\u76e3\u63a7\u4ee5\u4e0b <code>vmstat<\/code> \u6307\u6a19\uff0c\u4ee5\u767c\u73fe\u4e0d\u65b7\u52a0\u5287\u7684\u6548\u80fd\u8da8\u52e2\uff1a<\/p>\n<div class=\"qc-default-table-wrapper \">\n<table style=\"min-width: 50px;\">\n<colgroup>\n<col style=\"min-width: 25px;\" \/>\n<col style=\"min-width: 25px;\" \/> <\/colgroup>\n<tbody>\n<tr>\n<th colspan=\"1\" rowspan=\"1\">\u6307\u6a19\u540d\u7a31<\/th>\n<th colspan=\"1\" rowspan=\"1\">\u4f5c\u7528 \/ \u8ffd\u8e64\u6d3b\u52d5<\/th>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><code>compact_stall<\/code><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u8a18\u9304\u884c\u7a0b\u56e0\u76f4\u63a5\u58d3\u7e2e\u800c\u88ab\u963b\u585e\u7684\u6b21\u6578\u3002<\/td>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><code>pgscan_direct<\/code><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u7d71\u8a08\u884c\u7a0b\u5728\u76f4\u63a5\u56de\u6536\u904e\u7a0b\u4e2d\u540c\u6b65\u6383\u63cf\u7684\u9801\u9762\u6578\u91cf\u3002<\/td>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><code>pgsteal_direct<\/code><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u7d71\u8a08\u900f\u904e\u76f4\u63a5\u56de\u6536\u6210\u529f\u91cb\u653e\u7684\u9801\u9762\u6578\u91cf\u3002<\/td>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><code>allocstall_normal<\/code><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u7d71\u8a08\u767c\u751f\u5728 Normal \u8a18\u61b6\u9ad4\u5340\u57df\u4e2d\u7684\u76f4\u63a5\u56de\u6536\u9032\u5165\u6b21\u6578\u3002<\/td>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><code>allocstall_dma32<\/code><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u7d71\u8a08\u767c\u751f\u5728 DMA32 \u8a18\u61b6\u9ad4\u5340\u57df\u4e2d\u7684\u76f4\u63a5\u56de\u6536\u9032\u5165\u6b21\u6578\u3002<\/td>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><code>allocstall_dma<\/code><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u7d71\u8a08\u767c\u751f\u5728 DMA \u8a18\u61b6\u9ad4\u5340\u57df\u4e2d\u7684\u76f4\u63a5\u56de\u6536\u9032\u5165\u6b21\u6578\u3002<\/td>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><code>allocstall_movable<\/code><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u7d71\u8a08\u767c\u751f\u5728 Movable \u8a18\u61b6\u9ad4\u5340\u57df\u4e2d\u7684\u76f4\u63a5\u56de\u6536\u9032\u5165\u6b21\u6578\u3002<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>\u5982\u679c\u9019\u4e9b\u8a08\u6578\u5668\u6301\u7e8c\u4e0a\u5347\uff0c\u5c31\u8868\u793a\u6838\u5fc3\u6b63\u5728\u70ba\u6e4a\u51fa\u7a7a\u9592\u9801\u9762\u800c\u4ed8\u51fa\u904e\u9ad8\u4ee3\u50f9\u3002<\/p>\n<h2><strong>\u7de9\u89e3\u8207\u8a18\u61b6\u9ad4\u7ba1\u7406\u7b56\u7565<\/strong><\/h2>\n<p>\u4f60\u53ef\u4ee5\u4e3b\u52d5\u7ba1\u7406\u4f3a\u670d\u5668\u8a18\u61b6\u9ad4\uff0c\u4ee5\u9632\u6b62\u56b4\u91cd\u7684\u6548\u80fd\u9000\u5316\u3002\u7121\u8ad6\u662f\u5728\u6838\u5fc3\u5c64\u9084\u662f\u61c9\u7528\u5c64\uff0c\u63a1\u7528\u6709\u6548\u7684\u7de9\u89e3\u624b\u6bb5\u90fd\u80fd\u5e6b\u52a9\u7cfb\u7d71\u7dad\u6301\u9577\u671f\u53ef\u7528\u6027\u3002<\/p>\n<h3>\u8abf\u6821\u6838\u5fc3\u58d3\u7e2e\u53c3\u6578<\/h3>\n<p>Linux \u6838\u5fc3\u5728 <code>\/proc\/sys\/vm\/<\/code> \u4e0b\u63d0\u4f9b\u4e86\u591a\u500b\u8a2d\u5b9a\u9805\uff0c\u7528\u65bc\u7ba1\u7406\u9801\u9762\u914d\u7f6e\u6548\u7387\u3002\u4f60\u53ef\u4ee5\u5728\u4e0d\u91cd\u65b0\u555f\u52d5\u751f\u7522\u7bc0\u9ede\u7684\u524d\u63d0\u4e0b\u5373\u6642\u8abf\u6574\u9019\u4e9b\u53c3\u6578\u3002<\/p>\n<pre><code># \u67e5\u770b\u7576\u524d\u6838\u5fc3\u58d3\u7e2e\u8a2d\u5b9a\r\nsysctl vm.compaction_proactiveness vm.extfrag_threshold vm.min_free_kbytes<\/code><\/pre>\n<p>\u4f60\u53ef\u4ee5\u900f\u904e\u4ee5\u4e0b\u4e09\u500b\u4e3b\u8981\u53c3\u6578\u4f86\u512a\u5316\u6838\u5fc3\u80cc\u666f\u884c\u70ba\uff1a<\/p>\n<ul>\n<li><code>vm.compaction_proactiveness<\/code>\uff1a\u6b64\u53c3\u6578\u63a7\u5236\u6838\u5fc3\u5728\u5206\u914d\u8acb\u6c42\u5931\u6557\u524d\uff0c\u6703\u591a\u7a4d\u6975\u5730\u9810\u5148\u6574\u7406\u5be6\u9ad4\u9801\u9762\u3002\u63d0\u9ad8 <code>vm.compaction_proactiveness<\/code> \u7684\u503c\uff0c\u6703\u4fc3\u4f7f\u6838\u5fc3\u66f4\u4e3b\u52d5\u5730\u9032\u884c\u8a18\u61b6\u9ad4\u58d3\u7e2e\uff0c\u4ee5\u7dad\u6301\u9023\u7e8c\u8a18\u61b6\u9ad4\u53ef\u7528\u6027\u3002\u4e0d\u904e\uff0c\u7531\u65bc\u58d3\u7e2e\u672c\u8eab\u6703\u5e36\u4f86\u57f7\u884c\u671f\u958b\u92b7\uff0c\u66f4\u9ad8\u7684\u8a2d\u5b9a\u4e5f\u6703\u589e\u52a0\u7cfb\u7d71\u8ca0\u64d4\uff1b\u800c\u5c07\u5176\u8a2d\u70ba 0 \u5247\u8868\u793a\u5b8c\u5168\u95dc\u9589\u4e3b\u52d5\u58d3\u7e2e\u3002\u7cfb\u7d71\u4e2d\u6703\u6709\u4e00\u500b\u5c08\u9580\u7684 <code>kcompactd<\/code> \u57f7\u884c\u7dd2\u5728\u904b\u884c\u671f\u9593\u6301\u7e8c\u5de5\u4f5c\uff0c\u6d3b\u8e8d\u6642\u6700\u591a\u53ef\u80fd\u5360\u7528\u55ae\u500b CPU \u6838\u5fc3\u7684 100%\u3002<\/li>\n<li><code>vm.extfrag_threshold<\/code>\uff1a\u6b64\u53c3\u6578\u6c7a\u5b9a\u6838\u5fc3\u4f55\u6642\u5f9e\u9801\u9762\u56de\u6536\u5207\u63db\u5230\u76f4\u63a5\u58d3\u7e2e\u3002\u95be\u503c\u8d8a\u9ad8\uff0c\u8d8a\u50be\u5411\u65bc\u76f4\u63a5\u5617\u8a66\u5206\u914d\u9801\u9762\uff1b\u95be\u503c\u8d8a\u4f4e\uff0c\u5247\u8d8a\u65e9\u89f8\u767c\u58d3\u7e2e\u3002<\/li>\n<li><code>vm.min_free_kbytes<\/code>\uff1a\u63d0\u9ad8\u6b64\u503c\u6703\u8feb\u4f7f\u6838\u5fc3\u4fdd\u7559\u66f4\u5927\u7684\u7a7a\u9592\u9801\u9762\u5132\u5099\u3002\u9019\u6a23\u7684\u5132\u5099\u53ef\u5728\u7a81\u767c\u8a18\u61b6\u9ad4\u4f7f\u7528\u9ad8\u5cf0\u6642\uff0c\u70ba\u5925\u4f34\u5206\u914d\u5668\u63d0\u4f9b\u7dca\u6025\u9918\u88d5\u3002<\/li>\n<\/ul>\n<blockquote><p><strong>\u8a2d\u5b9a\u5efa\u8b70\uff1a<\/strong>\u5c0d\u65bc\u5ef6\u9072\u654f\u611f\u578b\u8cc7\u6599\u5eab\u7bc0\u9ede\uff0c\u53ef\u5c07 <code>vm.compaction_proactiveness<\/code> \u8a2d\u70ba 20 \u5230 50 \u7684\u4e2d\u7b49\u503c\u3002\u9019\u6a23\u65e2\u80fd\u964d\u4f4e\u788e\u7247\u5316\u98a8\u96aa\uff0c\u4e5f\u80fd\u907f\u514d <code>kcompactd<\/code> \u80cc\u666f\u57f7\u884c\u7dd2\u5728\u696d\u52d9\u9ad8\u5cf0\u671f\u7368\u5360\u6574\u500b CPU \u6838\u5fc3\u3002<\/p><\/blockquote>\n<h3>\u4f7f\u7528\u81ea\u8a02\u8a18\u61b6\u9ad4\u5206\u914d\u5668<\/h3>\n<p>\u9810\u8a2d\u7684\u7cfb\u7d71\u5206\u914d\u51fd\u5f0f\u5eab\uff08\u5982\u6a19\u6e96 <code>glibc malloc<\/code>\uff09\u5728\u9762\u5c0d\u9ad8\u983b\u7387\u3001\u9577\u6642\u9593\u904b\u884c\u7684\u5206\u914d\u6a21\u5f0f\u6642\uff0c\u5f80\u5f80\u5bb9\u6613\u7522\u751f\u788e\u7247\u5316\u3002\u4f60\u53ef\u4ee5\u4f7f\u7528\u66f4\u73fe\u4ee3\u3001\u66f4\u504f\u5411\u6548\u80fd\u512a\u5316\u7684\u5206\u914d\u5668\u4f86\u53d6\u4ee3\u9810\u8a2d\u5be6\u4f5c\u3002<\/p>\n<div class=\"qc-default-table-wrapper \">\n<table style=\"min-width: 75px;\">\n<colgroup>\n<col style=\"min-width: 25px;\" \/>\n<col style=\"min-width: 25px;\" \/>\n<col style=\"min-width: 25px;\" \/> <\/colgroup>\n<tbody>\n<tr>\n<th colspan=\"1\" rowspan=\"1\">\u5206\u914d\u5668\u540d\u7a31<\/th>\n<th colspan=\"1\" rowspan=\"1\">\u4e3b\u8981\u8a2d\u8a08\u7b56\u7565<\/th>\n<th colspan=\"1\" rowspan=\"1\">\u95dc\u9375\u67b6\u69cb\u512a\u52e2<\/th>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><strong>glibc malloc<\/strong><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u901a\u7528\u578b\u5806\u7ba1\u7406<\/td>\n<td colspan=\"1\" rowspan=\"1\">\u6a19\u6e96\u9810\u8a2d\u5be6\u4f5c\uff0c\u4f46\u9577\u671f\u904b\u884c\u5f8c\u5bb9\u6613\u51fa\u73fe\u8f03\u56b4\u91cd\u7684\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u3002<\/td>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><strong>jemalloc<\/strong><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u57fa\u65bc arena \u7684\u5206\u914d\u6a5f\u5236\u8207\u57f7\u884c\u7dd2\u5feb\u53d6<\/td>\n<td colspan=\"1\" rowspan=\"1\">\u53ef\u6e1b\u5c11\u5206\u6563\u5206\u914d\uff0c\u4e26\u5c07\u4e0d\u518d\u9700\u8981\u7684\u9801\u9762\u6b78\u9084\u7d66\u6838\u5fc3\u3002<\/td>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><strong>tcmalloc<\/strong><\/td>\n<td colspan=\"1\" rowspan=\"1\">\u57f7\u884c\u7dd2\u5feb\u53d6\u578b malloc<\/td>\n<td colspan=\"1\" rowspan=\"1\">\u5229\u7528\u57f7\u884c\u7dd2\u672c\u5730\u5feb\u53d6\u6e1b\u5c11\u9396\u7af6\u722d\uff0c\u4e26\u4fdd\u6301\u66f4\u5747\u52fb\u7684\u8a18\u61b6\u9ad4\u5340\u584a\u5927\u5c0f\u3002<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>\u9019\u4e9b\u5c08\u7528\u5206\u914d\u5668\u6703\u5c07\u8a18\u61b6\u9ad4\u5283\u5206\u70ba\u56fa\u5b9a\u5927\u5c0f\u7684 bin\uff0c\u4e26\u70ba\u4e0d\u540c CPU \u57f7\u884c\u7dd2\u5206\u914d\u7368\u7acb arena\u3002\u4f60\u53ef\u4ee5\u900f\u904e <code>LD_PRELOAD<\/code> \u74b0\u5883\u8b8a\u6578\uff0c\u8f15\u9b06\u5c07 <code>jemalloc<\/code> \u6216 <code>tcmalloc<\/code> \u6574\u5408\u5230\u61c9\u7528\u7a0b\u5f0f\u4e2d\uff1a<\/p>\n<pre><code># \u4f7f\u7528 jemalloc \u4f5c\u70ba\u5e95\u5c64\u5206\u914d\u5668\u555f\u52d5\u61c9\u7528\u7a0b\u5f0f\r\nLD_PRELOAD=\/usr\/lib\/x86_64-linux-gnu\/libjemalloc.so.2 .\/your_server_binary<\/code><\/pre>\n<h3>\u61c9\u7528\u5c64\u8a18\u61b6\u9ad4\u6c60\u5be6\u52d9<\/h3>\n<p>\u4f60\u53ef\u4ee5\u900f\u904e\u5728\u61c9\u7528\u7a0b\u5f0f\u7a0b\u5f0f\u78bc\u4e2d\u5efa\u7acb\u81ea\u8a02\u8a18\u61b6\u9ad4\u6c60\uff0c\u6d88\u9664\u52d5\u614b\u5806\u5206\u914d\u7684\u984d\u5916\u958b\u92b7\u3002\u8a18\u61b6\u9ad4\u6c60\u5141\u8a31\u670d\u52d9\u91cd\u8907\u4f7f\u7528\u56fa\u5b9a\u5927\u5c0f\u7684\u69fd\u4f4d\uff0c\u800c\u4e0d\u662f\u53cd\u8986\u547c\u53eb\u52d5\u614b\u6838\u5fc3\u5206\u914d\u3002<\/p>\n<pre><code>+--------------------------------------------------------+\r\n|                        \u8a18\u61b6\u9ad4\u6c60                        |\r\n|  +--------------+  +--------------+  +--------------+  |\r\n|  | \u69fd\u4f4d 1\uff08\u7a7a\u9592\uff09|  | \u69fd\u4f4d 2\uff08\u5360\u7528\uff09|  | \u69fd\u4f4d 3\uff08\u7a7a\u9592\uff09|  |\r\n|  +--------------+  +--------------+  +--------------+  |\r\n+--------------------------------------------------------+<\/code><\/pre>\n<p>\u4f60\u53ef\u4ee5\u63a1\u7528\u4ee5\u4e0b\u95dc\u9375\u61c9\u7528\u6a21\u5f0f\uff0c\u4ee5\u7dad\u6301\u7a69\u5b9a\u4e00\u81f4\u7684\u57f7\u884c\u6548\u80fd\uff1a<\/p>\n<ol>\n<li><strong>\u7269\u4ef6\u91cd\u7528\u6c60<\/strong>\uff1a\u5728\u4f3a\u670d\u5668\u521d\u59cb\u5316\u968e\u6bb5\u9810\u5148\u5206\u914d\u5927\u578b\u9663\u5217\u7de9\u885d\u5340\u3002\u5c07\u53ef\u8b8a\u8cc7\u6599\u5beb\u5165\u9810\u5206\u914d\u69fd\u4f4d\uff0c\u4e26\u5728\u5de5\u4f5c\u57f7\u884c\u7dd2\u8655\u7406\u5b8c\u6210\u5f8c\u628a\u69fd\u4f4d\u6b78\u9084\u6c60\u4e2d\u3002<\/li>\n<li><strong>Slab \u5206\u914d\u5668<\/strong>\uff1a\u5c07\u5c0f\u578b\u3001\u540c\u69cb\u7684\u8cc7\u6599\u7d50\u69cb\u7d44\u7e54\u5230\u7d71\u4e00\u4e14\u9023\u7e8c\u7684\u5340\u584a\u4e2d\uff0c\u5373 slab\u3002\u61c9\u7528\u7a0b\u5f0f\u53ef\u4ee5\u6574\u584a\u91cb\u653e slab\uff0c\u5f9e\u800c\u907f\u514d\u96f6\u6563\u9801\u9762\u9593\u9699\u3002<\/li>\n<li><strong>\u74b0\u5f62\u7de9\u885d\u5340<\/strong>\uff1a\u5c0d\u65bc\u4e32\u6d41\u5f0f\u5de5\u4f5c\u8ca0\u8f09\u6216\u50b3\u5165 socket \u5c01\u5305\uff0c\u4f7f\u7528\u56fa\u5b9a\u5927\u5c0f\u7684\u5faa\u74b0\u7de9\u885d\u5340\u3002\u74b0\u5f62\u7de9\u885d\u5340\u53ef\u4ee5\u8b93\u8a18\u61b6\u9ad4\u4f7f\u7528\u4fdd\u6301\u53ef\u9810\u6e2c\u4e14\u6709\u4e0a\u9650\u3002<\/li>\n<\/ol>\n<p>\u4f7f\u7528\u8a18\u61b6\u9ad4\u6c60\u80fd\u5920\u8b93\u4f3a\u670d\u5668\u4f4d\u5740\u7a7a\u9593\u4fdd\u6301\u7a69\u5b9a\uff0c\u4e26\u6e1b\u5c11\u5728\u6301\u7e8c\u6578\u6708\u904b\u884c\u671f\u9593\u4e0d\u53ef\u9810\u6e2c\u7684\u6838\u5fc3\u64cd\u4f5c\u3002<\/p>\n<div class=\"qc-divider-wrapper\">\n<div class=\"qc-divider\" style=\"border-top-style: solid; width: 100%; border-top-color: #d1d1d1;\"><\/div>\n<\/div>\n<p>\u82e5\u653e\u4efb\u4e0d\u7ba1\uff0c\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u6703\u6084\u7136\u4fb5\u8755\u4f3a\u670d\u5668\u7684\u53ef\u7528\u6027\u3001\u7cfb\u7d71\u541e\u5410\u80fd\u529b\u8207\u904b\u884c\u53ef\u9760\u6027\u3002\u4f60\u5fc5\u9808\u4e3b\u52d5\u9632\u7bc4\u9019\u7a2e\u96b1\u853d\u7684\u6545\u969c\u6a21\u5f0f\u3002<\/p>\n<p>\u4f60\u53ef\u4ee5\u900f\u904e\u4e09\u9805\u95dc\u9375\u5be6\u52d9\u4f86\u4fdd\u8b77\u7cfb\u7d71\uff1a<\/p>\n<ul>\n<li>\u4f7f\u7528 Linux \u539f\u751f\u8a3a\u65b7\u5de5\u5177\u6301\u7e8c\u8ffd\u8e64\u8a18\u61b6\u9ad4\u9023\u7e8c\u6027\u3002<\/li>\n<li>\u7d30\u7dfb\u8abf\u6821\u6838\u5fc3\u58d3\u7e2e\u53c3\u6578\uff0c\u5728\u80cc\u666f\u6574\u7406\u958b\u92b7\u8207\u696d\u52d9\u6548\u80fd\u4e4b\u9593\u53d6\u5f97\u5e73\u8861\u3002<\/li>\n<li>\u91dd\u5c0d\u9ad8\u983b\u5206\u914d\u578b\u5de5\u4f5c\u8ca0\u8f09\uff0c\u90e8\u7f72\u5982 jemalloc \u6216 tcmalloc \u4e4b\u985e\u7684\u5c08\u7528\u5206\u914d\u5668\u3002<\/li>\n<\/ul>\n<h2><strong>\u5e38\u898b\u554f\u984c<\/strong><\/h2>\n<h3>\u5982\u4f55\u5feb\u901f\u6aa2\u6e2c\u751f\u7522\u74b0\u5883\u4f3a\u670d\u5668\u4e0a\u7684\u8a18\u61b6\u9ad4\u788e\u7247\u5316\uff1f<\/h3>\n<p>\u4f60\u53ef\u4ee5\u4f7f\u7528 Linux \u539f\u751f\u547d\u4ee4\u6aa2\u67e5 <code>\/proc\/buddyinfo<\/code> \u6a94\u6848\uff0c\u91cd\u9ede\u95dc\u6ce8\u9ad8\u968e\u8a18\u61b6\u9ad4\u5217\u8868\u4e2d\u7684\u6578\u503c\u662f\u5426\u504f\u5c0f\u3002\u6216\u8005\uff0c\u4e5f\u53ef\u4ee5\u900f\u904e <code>dmesg<\/code> \u76e3\u63a7\u7cfb\u7d71\u65e5\u8a8c\u4e2d\u7684 page allocation failure \u8b66\u544a\u3002\u9019\u4e9b\u6307\u6a19\u90fd\u80fd\u8fc5\u901f\u78ba\u8a8d\u5be6\u9ad4\u4f4d\u5740\u7a7a\u9593\u662f\u5426\u5df2\u7d93\u767c\u751f\u788e\u7247\u5316\u3002<\/p>\n<h3>\u91cd\u65b0\u555f\u52d5\u4f3a\u670d\u5668\u80fd\u5426\u5fb9\u5e95\u89e3\u6c7a\u8a18\u61b6\u9ad4\u788e\u7247\u5316\uff1f<\/h3>\n<blockquote><p><strong>\u95dc\u9375\u4e8b\u5be6\uff1a<\/strong>\u91cd\u65b0\u555f\u52d5\u6703\u5b8c\u5168\u6e05\u7a7a\u7cfb\u7d71 RAM\uff0c\u4e26\u91cd\u8a2d\u5be6\u9ad4\u9801\u9762\u5206\u914d\u72c0\u614b\u3002<\/p><\/blockquote>\n<p>\u7136\u800c\uff0c\u91cd\u65b0\u555f\u52d5\u6703\u5e36\u4f86\u4e0d\u5fc5\u8981\u7684\u670d\u52d9\u4e2d\u65b7\u3002\u4f60\u66f4\u61c9\u8a72\u8abf\u6821\u6838\u5fc3\u58d3\u7e2e\u53c3\u6578\uff0c\u6216\u90e8\u7f72\u50cf <code>jemalloc<\/code> \u9019\u6a23\u7684\u73fe\u4ee3\u5206\u914d\u5668\uff0c\u4ee5\u907f\u514d\u5728\u4e0d\u91cd\u65b0\u555f\u52d5\u751f\u7522\u7bc0\u9ede\u7684\u60c5\u6cc1\u4e0b\u53cd\u8986\u51fa\u73fe\u788e\u7247\u5316\u554f\u984c\u3002<\/p>\n<h3>\u70ba\u4ec0\u9ebc\u5728 RAM \u4ecd\u6709\u5269\u9918\u6642\uff0cOOM killer \u4ecd\u7136\u6703\u89f8\u767c\uff1f<\/h3>\n<p>\u7576 Linux \u6838\u5fc3\u7121\u6cd5\u70ba\u9ad8\u968e\u8a18\u61b6\u9ad4\u8acb\u6c42\u627e\u5230\u8db3\u5920\u7684\u9023\u7e8c\u5be6\u9ad4\u9801\u9762\u6642\uff0cOOM killer \u5c31\u6703\u89f8\u767c\u3002\u56b4\u91cd\u7684\u5916\u90e8\u788e\u7247\u5316\u6703\u628a\u4f4d\u5740\u7a7a\u9593\u5207\u5272\u6210\u8a31\u591a\u5b64\u7acb\u7684\u5c0f\u9593\u9699\u3002\u4e00\u65e6\u76f4\u63a5\u58d3\u7e2e\u7121\u6cd5\u5c07\u9019\u4e9b\u9593\u9699\u6574\u5408\u6210\u9023\u7e8c\u7a7a\u9593\uff0c\u6838\u5fc3\u5c31\u6703\u5728\u7e3d\u7a7a\u9592 RAM \u4f9d\u7136\u8f03\u9ad8\u7684\u60c5\u6cc1\u4e0b\u7d42\u6b62\u884c\u7a0b\u3002<\/p>\n<h3>jemalloc \u8207 glibc malloc \u5728\u904b\u884c\u5c64\u9762\u7684\u4e3b\u8981\u5dee\u7570\u662f\u4ec0\u9ebc\uff1f<\/h3>\n<p>\u6a19\u6e96 <code>glibc malloc<\/code> \u4ee5\u5168\u57df\u65b9\u5f0f\u7ba1\u7406\u5806\u7a7a\u9593\uff0c\u9577\u6642\u9593\u904b\u884c\u5f8c\u66f4\u5bb9\u6613\u9020\u6210\u56b4\u91cd\u788e\u7247\u5316\u3002\u76f8\u6bd4\u4e4b\u4e0b\uff0c<code>jemalloc<\/code> \u4f7f\u7528\u57f7\u884c\u7dd2\u5c08\u5c6c arena \u8207\u56fa\u5b9a\u5927\u5c0f bin\u3002\u9019\u7a2e\u5c08\u9580\u8a2d\u8a08\u7684\u67b6\u69cb\u80fd\u5920\u6e1b\u5c11\u5206\u6563\u5206\u914d\uff0c\u4e26\u66f4\u6709\u6548\u7387\u5730\u5c07\u4e0d\u518d\u9700\u8981\u7684\u8a18\u61b6\u9ad4\u9801\u9762\u6b78\u9084\u7d66\u6838\u5fc3\u3002[\/vc_column_text][\/vc_column][\/vc_row]<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>[vc_row][vc_column][vc_column_text css=&#8221;&#8221;]\u4f60 [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"https:\/\/www.simcentric.com\/tc\/hong-kong-dedicated-server-tc\/how-memory-fragmentation-affects-long-term-server-stability\/\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":1,"featured_media":33744,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[61],"tags":[12520,12521,12522,5836,2470],"class_list":["post-33747","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-hong-kong-dedicated-server-tc","tag-linux-memory-management","tag-oom-errors","tag-memory-fragmentation","tag-memory-allocation-tc","tag-server-stability-tc"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u5982\u4f55\u5f71\u97ff\u4f3a\u670d\u5668\u7684\u9577\u671f\u7a69\u5b9a\u6027<\/title>\n<meta name=\"description\" content=\"\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u6703\u5c07\u7a7a\u9592 RAM \u6253\u6563\u70ba\u4e0d\u9023\u7e8c\u7684\u788e\u7247\uff0c\u5c0e\u81f4\u9577\u671f\u904b\u884c\u7684\u4f3a\u670d\u5668\u51fa\u73fe\u5ef6\u9072\u5c16\u5cf0\u3001OOM \u5d29\u6f70\u8207\u5206\u914d\u5ef6\u9072\u3002\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/posts\/33747\" \/>\n<meta property=\"og:locale\" content=\"zh_TW\" \/>\n<meta property=\"og:type\" content=\"company\" \/>\n<meta property=\"og:title\" content=\"\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u5982\u4f55\u5f71\u97ff\u4f3a\u670d\u5668\u7684\u9577\u671f\u7a69\u5b9a\u6027\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/posts\/33747\" \/>\n<meta property=\"og:site_name\" content=\"\u65b0\u5929\u57df\u4e92\u806f\" \/>\n<meta property=\"article:published_time\" content=\"2026-08-02T00:00:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.simcentric.com\/wp-content\/uploads\/2026\/07\/Picture1-1-13.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"624\" \/>\n\t<meta property=\"og:image:height\" content=\"340\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u5982\u4f55\u5f71\u97ff\u4f3a\u670d\u5668\u7684\u9577\u671f\u7a69\u5b9a\u6027","description":"\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u6703\u5c07\u7a7a\u9592 RAM \u6253\u6563\u70ba\u4e0d\u9023\u7e8c\u7684\u788e\u7247\uff0c\u5c0e\u81f4\u9577\u671f\u904b\u884c\u7684\u4f3a\u670d\u5668\u51fa\u73fe\u5ef6\u9072\u5c16\u5cf0\u3001OOM \u5d29\u6f70\u8207\u5206\u914d\u5ef6\u9072\u3002","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/posts\/33747","og_locale":"zh_TW","og_type":"company","og_title":"\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u5982\u4f55\u5f71\u97ff\u4f3a\u670d\u5668\u7684\u9577\u671f\u7a69\u5b9a\u6027","og_url":"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/posts\/33747","og_site_name":"\u65b0\u5929\u57df\u4e92\u806f","article_published_time":"2026-08-02T00:00:20+00:00","og_image":[{"width":624,"height":340,"url":"https:\/\/www.simcentric.com\/wp-content\/uploads\/2026\/07\/Picture1-1-13.jpg","type":"image\/jpeg"}],"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.simcentric.com\/hong-kong-dedicated-server\/how-memory-fragmentation-affects-long-term-server-stability\/#article","isPartOf":{"@id":"https:\/\/www.simcentric.com\/hong-kong-dedicated-server\/how-memory-fragmentation-affects-long-term-server-stability\/"},"author":{"name":"Tommy Cheung","@id":"https:\/\/simcentric.com\/tc\/#\/schema\/person\/631e153fdae3d1c71e500611868451e8"},"headline":"\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u5982\u4f55\u5f71\u97ff\u4f3a\u670d\u5668\u7684\u9577\u671f\u7a69\u5b9a\u6027","datePublished":"2026-08-02T00:00:20+00:00","mainEntityOfPage":{"@id":"https:\/\/www.simcentric.com\/hong-kong-dedicated-server\/how-memory-fragmentation-affects-long-term-server-stability\/"},"wordCount":112,"publisher":{"@id":"https:\/\/simcentric.com\/tc\/#organization"},"image":{"@id":"https:\/\/www.simcentric.com\/hong-kong-dedicated-server\/how-memory-fragmentation-affects-long-term-server-stability\/#primaryimage"},"thumbnailUrl":"https:\/\/www.simcentric.com\/wp-content\/uploads\/2026\/07\/Picture1-1-13.jpg","keywords":["Linux\u8a18\u61b6\u9ad4\u7ba1\u7406","OOM\u932f\u8aa4","\u8a18\u61b6\u9ad4\u788e\u7247\u5316","\u8a18\u61b6\u9ad4\u5206\u914d","\u4f3a\u670d\u5668\u7a69\u5b9a\u6027"],"articleSection":["\u9999\u6e2f\u4f3a\u670d\u5668"],"inLanguage":"zh-HK"},{"@type":"WebPage","@id":"https:\/\/www.simcentric.com\/hong-kong-dedicated-server\/how-memory-fragmentation-affects-long-term-server-stability\/","url":"https:\/\/www.simcentric.com\/hong-kong-dedicated-server\/how-memory-fragmentation-affects-long-term-server-stability\/","name":"\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u5982\u4f55\u5f71\u97ff\u4f3a\u670d\u5668\u7684\u9577\u671f\u7a69\u5b9a\u6027","isPartOf":{"@id":"https:\/\/simcentric.com\/tc\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.simcentric.com\/hong-kong-dedicated-server\/how-memory-fragmentation-affects-long-term-server-stability\/#primaryimage"},"image":{"@id":"https:\/\/www.simcentric.com\/hong-kong-dedicated-server\/how-memory-fragmentation-affects-long-term-server-stability\/#primaryimage"},"thumbnailUrl":"https:\/\/www.simcentric.com\/wp-content\/uploads\/2026\/07\/Picture1-1-13.jpg","datePublished":"2026-08-02T00:00:20+00:00","description":"\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u6703\u5c07\u7a7a\u9592 RAM \u6253\u6563\u70ba\u4e0d\u9023\u7e8c\u7684\u788e\u7247\uff0c\u5c0e\u81f4\u9577\u671f\u904b\u884c\u7684\u4f3a\u670d\u5668\u51fa\u73fe\u5ef6\u9072\u5c16\u5cf0\u3001OOM \u5d29\u6f70\u8207\u5206\u914d\u5ef6\u9072\u3002","breadcrumb":{"@id":"https:\/\/www.simcentric.com\/hong-kong-dedicated-server\/how-memory-fragmentation-affects-long-term-server-stability\/#breadcrumb"},"inLanguage":"zh-HK","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.simcentric.com\/hong-kong-dedicated-server\/how-memory-fragmentation-affects-long-term-server-stability\/"]}]},{"@type":"ImageObject","inLanguage":"zh-HK","@id":"https:\/\/www.simcentric.com\/hong-kong-dedicated-server\/how-memory-fragmentation-affects-long-term-server-stability\/#primaryimage","url":"https:\/\/www.simcentric.com\/wp-content\/uploads\/2026\/07\/Picture1-1-13.jpg","contentUrl":"https:\/\/www.simcentric.com\/wp-content\/uploads\/2026\/07\/Picture1-1-13.jpg","width":624,"height":340,"caption":"\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u5f71\u97ff\u4f3a\u670d\u5668\u9577\u671f\u7a69\u5b9a\u6027"},{"@type":"BreadcrumbList","@id":"https:\/\/www.simcentric.com\/hong-kong-dedicated-server\/how-memory-fragmentation-affects-long-term-server-stability\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.simcentric.com\/tc\/"},{"@type":"ListItem","position":2,"name":"\u8a18\u61b6\u9ad4\u788e\u7247\u5316\u5982\u4f55\u5f71\u97ff\u4f3a\u670d\u5668\u7684\u9577\u671f\u7a69\u5b9a\u6027"}]},{"@type":"WebSite","@id":"https:\/\/simcentric.com\/tc\/#website","url":"https:\/\/simcentric.com\/tc\/","name":"Simcentric Solutions","description":"","publisher":{"@id":"https:\/\/simcentric.com\/tc\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/simcentric.com\/tc\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"zh-HK"},{"@type":"Organization","@id":"https:\/\/simcentric.com\/tc\/#organization","name":"Simcentric Solutions","url":"https:\/\/simcentric.com\/tc\/","logo":{"@type":"ImageObject","inLanguage":"zh-HK","@id":"https:\/\/simcentric.com\/tc\/#\/schema\/logo\/image\/","url":"https:\/\/www.simcentric.com\/wp-content\/uploads\/2023\/06\/sim-logo-2023.png","contentUrl":"https:\/\/www.simcentric.com\/wp-content\/uploads\/2023\/06\/sim-logo-2023.png","width":800,"height":222,"caption":"Simcentric Solutions"},"image":{"@id":"https:\/\/simcentric.com\/tc\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/simcentric.com\/tc\/#\/schema\/person\/631e153fdae3d1c71e500611868451e8","name":"Tommy Cheung","image":{"@type":"ImageObject","inLanguage":"zh-HK","@id":"https:\/\/secure.gravatar.com\/avatar\/a2e7d94371b76574e2ddc0f18834f815c0329507429c6613f6a7bc9435dc6fd2?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/a2e7d94371b76574e2ddc0f18834f815c0329507429c6613f6a7bc9435dc6fd2?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a2e7d94371b76574e2ddc0f18834f815c0329507429c6613f6a7bc9435dc6fd2?s=96&d=mm&r=g","caption":"Tommy Cheung"},"sameAs":["https:\/\/simrevamp2023.sim-dp.com"]}]}},"_links":{"self":[{"href":"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/posts\/33747","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/comments?post=33747"}],"version-history":[{"count":2,"href":"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/posts\/33747\/revisions"}],"predecessor-version":[{"id":33750,"href":"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/posts\/33747\/revisions\/33750"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/media\/33744"}],"wp:attachment":[{"href":"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/media?parent=33747"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/categories?post=33747"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.simcentric.com\/tc\/wp-json\/wp\/v2\/tags?post=33747"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}