做了一个网站,日访问人数不是很多,大约2000人,用tomcat作为服务器,tomcat总是不定期的挡掉,需要重起,tomcat死掉的直接原因是内存溢出,已经加大了jvm内存和jvm核心堆栈内存,现在还是出现挡掉的情况,不知道是何原因?
catalina_log.txt中总是重复记录如下的异常:
2006-11-29 00:00:43 CoyoteAdapter Bad Cookie Name: Path /Value: /pub
java.lang.IllegalArgumentException: Cookie name Path is a reserved token
at javax.servlet.http.Cookie.<init>(Cookie.java:185)
at org.apache.coyote.tomcat4.CoyoteAdapter.parseCookies(CoyoteAdapter.java:403)
at org.apache.coyote.tomcat4.CoyoteAdapter.postParseRequest(CoyoteAdapter.java:306)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:221)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
at java.lang.Thread.run(Thread.java:536)
请问是什么原因造成tomcat抛出此异常?
------解决方法--------------------------------------------------------
可能是有内存泄露的代码,比如连接没关,或者一些核心代码写的有问题,对象引用只增不减,由于是核心代码,无法进行垃圾回收,这样的话,及时你再加多少内存,总是会宕机的,只不过迟早的问题。
------解决方法--------------------------------------------------------
Cookie Name
不是内存泄露
------解决方法--------------------------------------------------------
Cookie name Path is a reserved token
检查cookie path
------解决方法--------------------------------------------------------
程序中的cookie位置没有做相关初始设置
------解决方法--------------------------------------------------------
写入cookie的时候写成一个公共方法,注意扑获错误