钳入式jetty使用内存过大解决方法 - 开源中国社区

来源:百度文库 编辑:神马文学网 时间:2024/05/23 18:35:05

钳入式jetty使用内存过大解决方法

   到此页底部 »
话 题 正 文
2人关注此话题, 我要关注(收藏)(?) | 回复此话题 1楼 发表于 2010-07-02 17:44 (5个月前), 0回 /396阅, 最后回复:无

X相关的软件

  • Servlet容器 Jetty

我做的是wapgame,就是用jetty做web httpserver

应用指定Xmx 是2048内存,但我用top一看,居然占用了10g的内存,吓我一跳了

但程序并没有出现out of Memory 怪了~~~~

经过一翻测试,发现用的并不是应用内存,是系统的内存,这些内存不归应用管,而归jvm管了

jetty使用的是java 的nio ,nio在请求分配bytebuffer时有二种,一种是分配应用内存,一种是分配系统内存,终于明确了。

SelectChannelConnector conn = new SelectChannelConnector();
conn.setUseDirectBuffers(false);

在代码上加上这行设置即可