最近在做项目上线后的监控工作。发现一个批量压力测试之后,linux下面多了很多close_wait状态的端口占用,而且一直不释放。当系统链接到达一个极限之后,web服务器就down了,不工作了。
所以在写servlet的时候,注意加上下面的代码:
response.setHeader("Connection", "close");
假如你的servlet是对外提供一次性的服务,还可以加上下面的代码:
try {
request.getSession.invalidate();
} catch (Exception e) {
e.printStackTrace();
}
看似很简单的几行代码,却给系统维护带来了很大的方便性。所以我们开发不能仅从自己的角度出发,你的代码虽然没有问题,但是在一个大的系统下面运行,我们还要兼顾各个方面的性能问题。