正常一年多的一个服务突然在23号出现异常,响应最快的竟然达到60几秒。apache与jboss之间大量连接超时。
看异常日志,发现竟然有一个新上的Servlet出现OOM。
review该Servlet,发现竟然用了一个CopyOnWriteArrayList来存放大量写和读和临时数据,该数据结构只适合偶尔写大量读的情况,
否则会造成不停地COPY空间,从而导致OOM
正常一年多的一个服务突然在23号出现异常,响应最快的竟然达到60几秒。apache与jboss之间大量连接超时。
看异常日志,发现竟然有一个新上的Servlet出现OOM。
review该Servlet,发现竟然用了一个CopyOnWriteArrayList来存放大量写和读和临时数据,该数据结构只适合偶尔写大量读的情况,
否则会造成不停地COPY空间,从而导致OOM