liuchlc 2019-10-11 10:39 采纳率: 0%
浏览 254

Lucence分页搜索时会造成服务器上内存泄漏?

我们业务上不存在大数据查询,但是服务器上出现内存泄漏可能,是因为遭攻击了的原因吗?还有这个ScoreDoc对象是因为攻击导致了占据了大量内在吗?如果是应该如何解决?
之前排查日志的确是发现有人利用网页的搜索入口不断地尝试攻击
原因:
org.apache.lucene.search.ScoreDoc这个对象占据了98%的内存

日志:

[ACTIVE] ExecuteThread: '19' for queue: 'weblogic.kernel.Default (self-tuning)' at org.apache.lucene.search.HitQueue.getSentinelObject()Ljava/lang/Object; (HitQueue.java:75) at org.apache.lucene.util.PriorityQueue.initialize(I)V (PriorityQueue.java:112) at org.apache.lucene.search.HitQueue.(IZ)V (HitQueue.java:67) at org.apache.lucene.search.TopScoreDocCollector.(I)V (TopScoreDocCollector.java:122) at org.apache.lucene.search.TopScoreDocCollector.(ILorg/apache/lucene/search/TopScoreDocCollector$1;)V (TopScoreDocCollector.java:37) at org.apache.lucene.search.TopScoreDocCollector$OutOfOrderTopScoreDocCollector.(I)V (TopScoreDocCollector.java:72) at org.apache.lucene.search.TopScoreDocCollector$OutOfOrderTopScoreDocCollector.(ILorg/apache/lucene/search/TopScoreDocCollector$1;)V (TopScoreDocCollector.java:70) at org.apache.lucene.search.TopScoreDocCollector.create(IZ)Lorg/apache/lucene/search/TopScoreDocCollector; (TopScoreDocCollector.java:111) at com.csii.lucene.index.IndexDao.search(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;)Lcom/csii/lucene/bean/SearchResult; (IndexDao.java:89) at com.csii.lucene.GetResult.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V (GetResult.java:51) at javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V (HttpServlet.java:820) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run()Ljava/lang/Object; (StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/http/HttpServletRequest;Lweblogic/servlet/internal/ServletRequestImpl;Ljavax/servlet/ServletResponse;Ljavax/servlet/http/HttpServletResponse;Ljavax/servlet/Servlet;)Ljava/lang/Throwable; (StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V (ServletStubImpl.java:301) at weblogic.servlet.internal.TailFilter.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Ljavax/servlet/FilterChain;)V (TailFilter.java:26) at weblogic.servlet.internal.FilterChainImpl.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V (FilterChainImpl.java:56) at com.csii.cms.util.EncodingFilter.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Ljavax/servlet/FilterChain;)V (EncodingFilter.java:52) at weblogic.servlet.internal.FilterChainImpl.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V (FilterChainImpl.java:56) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(Lweblogic/servlet/internal/ServletStubImpl;Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)Ljava/lang/Object; (WebAppServletContext.java:3730) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object; (WebAppServletContext.java:3696) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object; (AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object; (SecurityManager.java:120) at weblogic.servlet.internal.WebAppServletContext.securedExecute(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Z)V (WebAppServletContext.java:2273) at weblogic.servlet.internal.WebAppServletContext.execute(Lweblogic/servlet/internal/ServletRequestImpl;Lweblogic/servlet/internal/ServletResponseImpl;)V (WebAppServletContext.java:2179) at weblogic.servlet.internal.ServletRequestImpl.run()V (ServletRequestImpl.java:1490) at weblogic.work.ExecuteThread.execute(Ljava/lang/Runnable;)V (ExecuteThread.java:256) at weblogic.work.ExecuteThread.run()V (ExecuteThread.java:221)

  • 写回答

1条回答 默认 最新

  • zqbnqsdsmd 2019-10-12 09:40
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 MATLAB动图问题
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名