据说分布式向来是鬼影重重,留神不留神都能碰到鬼,今天就碰到一只难缠的。

启动报错:org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc The web application [service] registered the JDBC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.

事情起因:分布式,上午运行的好好的,没有一点异样。看日志也只是个警告而已。但是程序运行不起来。据说是内存泄漏,在tomcat的server.xml关闭内存泄漏监听<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />,结果毫无作用。

往深了找,度娘上找,说是数据源莫名关闭。于是各种druid怀疑。

配置修改了500遍还是没觉得有问题,2个小时过去了。

还有人说数据库连接数太多导致spring不释放连接。然后我关掉数据库,maven clear无数次,无效!!!重启电脑,这次该释放连接了吧(本地数据库),无效!!!!!

没法子了,只好一点点还原上午的程序,索性也没改多少。把原来LoginController文件中查询菜单的部分业务处理的代码又从MenuServiceImpl中还原到LoginController中,奇迹出现了,妈的居然好了。心中一万个草拟吗崩腾而过。分布式的坑这么多?

耐着性子慢慢找原因,按理说不可能是分布式的关系。逻辑处理不能写在业务层,这还搞个鸡毛分布式啊。分布式有三层(鉴于业务前期简单,只分三层):api(用来存放公共组件),controller层(服务消费者),service层(服务提供者)。

如果在service层中不能处理业务逻辑,是不是可能配置不正确,没有扫描到包,或者扫描的bean包范围太小,于是将原来的

Context:component-scan  base-package=”com.ywyt.*;com.ywyt.service.impl/>

改为:context:component-scan  base-package=”com.ywyt.service.*”,然后将业务逻辑处理放到service.imple中去,结果就好了。WTF!!

后记:自以为找到了问题的答案,又学了一招。结果…..结果第二天来,将配置改为第一天的扫描包和aop配置

结果还是可以运行。Double WTF!!!!!

To prevent a momery leak相关推荐

  1. 一次bug调试经验----To prevent a memory leak, the JDBC Driver has been forcibly unregistered.

    5-Feb-2019 11:03:11.635 严重 [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.StandardContex ...

  2. tomcat 启动时报错:To prevent a memory leak, the JDBC Driver has been forcibly unregistered

    在启动tomcat时,报错: 五月 04, 2017 10:56:15 上午 org.apache.coyote.AbstractProtocol start 信息: Starting Protoco ...

  3. 【tomcat启动报错】To prevent a memory leak, the JDBC Driver has been forcibly unregistered.

    我在写一个服务管理系统的时候出现了tomcat启动报错的问题 Maven配置的tomcat插件 <plugin><groupId>org.apache.tomcat.maven ...

  4. idea启动项目报错 --To prevent a memory leak, the JDBC Driver has been forcibly unregistered

    网上说的种种方法我都试过,我感觉新项目没有不要改代码. 解决了一早上种种方法都排除用过,最后我下载了一个7.5的tomcat解决问题之前用的是8.5. 注意:换tomcat7.5之前我本身项目内部所有 ...

  5. mysql memory leak_解决memory leak问题

    应用程序注册了JDBC驱动,但当程序停止时无法注销这个驱动,tomcat为了防止内存溢出,就给强制注销了 解决: 重写了org.apache.commons.dbcp.BasicDataSource  ...

  6. windows mobile做一个摄象头预览程序

    zdirectshow的原理大概大家都知道,基本就是用微软封装的接口来实现硬件无关性,但是最终调用的接口都要在驱动层有对应的实现: 为了更清楚地演示directshow的数据传输过程,我必须说明的这个 ...

  7. 简单读!tomcat源码(一)启动与监听

    tomcat 作为知名的web容器,很棒! 本文简单了从其应用命令开始拆解,让我们对他有清晰的了解,揭开神秘的面纱!(冗长的代码流水线,给你一目了然) 话分两头: 1. tomcat是如何启动的? 2 ...

  8. Tomcat 6.0.32 +Spring dbcp datasource关闭Tomcat出现严重异常

    异常如下: 信息: Pausing Coyote HTTP/1.1 on http-8080 2014-3-6 14:52:50 org.apache.catalina.core.StandardSe ...

  9. 解密jQuery事件核心 - 绑定设计(一)

    说起jQuery的事件,不得不提一下Dean Edwards大神 addEvent库,很多流行的类库的基本思想从他那儿借来的 jQuery的事件处理机制吸取了JavaScript专家Dean Edwa ...

最新文章

  1. 过滤当前主机的IPV4地址
  2. windows 7下同时安装visual studio 2012和2010
  3. go语言第一个程序-hello world
  4. java jwt 验证_教程:用Java创建和验证JWT
  5. php中获得客户端,服务器ip
  6. 【luogu3372】线段树 1 模板
  7. 0. Python3源码—编译
  8. Linux音频驱动-ALSA概述
  9. jupyter 教程
  10. 485通讯的校验和_案例丨MCGS与变频器、温度控制器进行通讯演示
  11. 面包板如何接线电源 图解_消防应急照明EPS应急电源供电系统如何设计?附高清接线参考图...
  12. 自动控制原理02 数学模型
  13. 利用TF_IDF算法计算两英文文章的文本相似度 C++实现
  14. android刷windows教程视频,蓝魔i9s安卓版刷Windows 8.1系统固件视频教程
  15. 【图像处理基础】RGB的解析
  16. Java黑皮书课后题第2章:2.4(将磅转换为千克)编写程序,将磅数转换为千克数。程序提示用户输入磅数,然后转换为千克并显示结果。1磅等于0.454千克
  17. 基于海康威视IP摄像头和虹软的MFC人脸识别系统开发教程——02使用示例代码构建MFC工程(海康威视IP摄像头部分)
  18. 求根节点到叶节点数字之和(C语言)
  19. 兄弟连兄弟会机构好不好
  20. C#绘图工具之Redim

热门文章

  1. 海康威视网络摄像头配置本地存储服务器(远程连接查看回放)
  2. Python爬取网易云音乐评论,反爬算啥啊!
  3. 使用vue-i18n实现中英文切换
  4. java大量实例化对象如何调优_成都Java性能调优技巧
  5. Oracle基本语法及例子
  6. 按下组合键 可以迅速锁定计算机,电脑快速锁屏快捷键
  7. Matlab 矩阵元素选取方法
  8. 2019广工ACM校赛决赛A题:思维题 HDU 6461 zsl 和hzy的生存挑战
  9. 网络安全体系与网络安全模型
  10. python 对excel的函数操作(2)