Bouncy Castle内存溢出
现象:
----------------------------------------------
1: 6736096 269443840 java.util.LinkedHashMap$Entry
2: 1360211 116788016 [C
3: 3560635 113940320 java.util.Hashtable$Entry
4: 1648844 92335264 java.security.Provider$Service
5: 3181146 76347504 java.security.Provider$ServiceKey
6: 21269 54483872 [Ljava.util.HashMap$Entry;
7: 1456006 46592192 java.lang.String
8: 5837 26712568 [Ljava.util.Hashtable$Entry;
9: 722313 23248472 [Ljava.lang.Object;
10: 142687 20602688
11: 142687 19416024
12: 718388 17241312 java.util.ArrayList
13: 13487 14511200
14: 13487 10430624
15: 11194 8157360
16: 127989 7303936
17: 29127 3953880 [B
18: 19410 3739704 [I
19: 35613 3133944 java.lang.reflect.Method
20: 69481 2223392 java.util.HashMap$Entry
21: 2886 2137144
22: 14176 1474304 java.lang.Class
23: 18304 1127368 [S
24: 21231 1068624 [[I
25: 12681 811584 com.ibatis.sqlmap.engine.mapping.parameter.ParameterMapping
26: 12681 811584 com.ibatis.sqlmap.engine.mapping.parameter.ParameterMapping
27: 11454 641424 java.util.LinkedHashMap
28: 9802 627328 com.ibatis.sqlmap.engine.mapping.sql.dynamic.elements.SqlTag
29: 9802 627328 com.ibatis.sqlmap.engine.mapping.sql.dynamic.elements.SqlTag
30: 20443 490632 com.ibatis.sqlmap.engine.mapping.sql.SqlText
31: 20443 490632 com.ibatis.sqlmap.engine.mapping.sql.SqlText
32: 9738 467424 java.util.HashMap
33: 9231 443088 org.apache.catalina.loader.ResourceEntry
34: 10718 428720 java.lang.ref.SoftReference
35: 21067 416344 [Lcom.ibatis.sqlmap.engine.mapping.parameter.ParameterMapping;
36: 21067 416344 [Lcom.ibatis.sqlmap.engine.mapping.parameter.ParameterMapping;
37: 12940 414080 java.lang.ref.WeakReference
38: 19937 413624 [Ljava.lang.Class;
39: 660 385440
40: 10423 376192 [Ljava.lang.String;
修改RSAUtil new org.bouncycastle.jce.provider.BouncyCastleProvider() -> "BC"
if (Security.getProvider(BouncyCastleProvider.PROVIDER_NAME) == null){
logger.info("security provider BC not found");
Security.addProvider(new BouncyCastleProvider());
}
}
部署:从WAR中移出bouncycastle的jar,移到/usr/local/java/jdk1.6.0_37/jre/lib/ext下面(不需要加静态导入),移到tomcat/lib下面(需要加静态导入)
Bouncy Castle内存溢出的更多相关文章
- Java 内存区域与内存溢出
内存区域 Java 虚拟机在执行 Java 程序的过程中会把他所管理的内存划分为若干个不同的数据区域.Java 虚拟机规范将 JVM 所管理的内存分为以下几个运行时数据区:程序计数器.Java 虚拟机 ...
- jvm内存溢出分析
概述 jvm中除了程序计数器,其他的区域都有可能会发生内存溢出 内存溢出是什么? 当程序需要申请内存的时候,由于没有足够的内存,此时就会抛出OutOfMemoryError,这就是内存溢出 内存溢出和 ...
- 如何写出让java虚拟机发生内存溢出异常OutOfMemoryError的代码
程序小白在写代码的过程中,经常会不经意间写出发生内存溢出异常的代码.很多时候这类异常如何产生的都傻傻弄不清楚,如果能故意写出让jvm发生内存溢出的代码,有时候看来也并非一件容易的事.最近通过学习< ...
- Tomcat内存溢出的三种情况及解决办法分析
Tomcat内存溢出的原因 在生产环境中tomcat内存设置不好很容易出现内存溢出.造成内存溢出是不一样的,当然处理方式也不一样. 这里根据平时遇到的情况和相关资料进行一个总结.常见的一般会有下面三种 ...
- webSphere内存溢出
有一个做了很长时间的项目,是用websphere做生产环境的,可是一旦加载的项目过多,webSphere就很傲娇的内存溢出,这是一个折腾了公司里某个前辈很久很久的问题,因为是测试版,所以各种官方文档说 ...
- java内存溢出和内存泄露
虽然jvm可以通过GC自动回收无用的内存,但是代码不好的话仍然存在内存溢出的风险. 最近在网上搜集了一些资料,现整理如下: —————————————————————————————————————— ...
- myeclipse tomcat内存溢出解决方法
Tomcat直接启动正常,通过myeclipse启动tomcat内存溢出.MyEclipse启动Tomcat无视catalina.bat中设置内存大小的问题.在 tomcat的catalina.bat ...
- 《深入理解Java虚拟机》Java内存区域与内存溢出异常
注:“蓝色加粗字体”为书本原语 先来一张JVM运行时数据区域图,再接下来一一分析各区域功能: 程序计数器 程序计数器(program Counter Register)是一块较小的内存空间,它可以 ...
- weblogic10内存溢出解决方法
在开发过程中经常会遇到weblogic内存溢出问题,用下面的办法解决了. 找到domain/bin下的setDomainEnv.cmd文件,里面可以找到以下四行代码,将值该打一倍,重启服务. set ...
随机推荐
- WinDbg 命令三部曲:(一)WinDbg 命令手册
本文为 Dennis Gao 原创技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载. 系列博文 <WinDbg 命令三部曲:(一)WinDbg 命令手册> <WinDb ...
- 【c++】必须在类初始化列表中初始化的几种情况
转自:http://www.cnblogs.com/kaituorensheng/p/3477630.html 1. 类成员为const类型 2. 类成员为引用类型 #include <iost ...
- win7 快捷键
F F1 显示辅助 F2 重命名选定项目 F3 搜索文件或文件夹 F4 在 Windows 资源管理器中显示地址栏列表 F5 刷新活动窗口 F6 在窗口中或桌面上循环切换屏幕元素 F10 激活活动程序 ...
- 基于socket、多线程的客户端服务器端聊天程序
服务器端: using System; using System.Windows.Forms; using System.Net.Sockets; using System.Net;//IPAddre ...
- linux 用户之间的切换
从root用户切换到普通用户fxm, 使用如下命令:su - fxm 从普通用户切换到root用户,使用如下命令:su - 或者 su, root可以省略不写.
- opengl纹理映射总结
大概步骤: 1.创建纹理对象,并为他指定一个纹理. 2.确定纹理如何应用到每个像素上. 3.启用纹理贴图 4.绘制场景,提供纹理和几何坐标 过滤:由于我们提供的纹理图像很少能和最终的屏幕坐标形成对应, ...
- js获取今天明天
目的:记录中展现"今天","明天",除外展现月日. 借鉴: <html> <head> <meta http-equiv=&quo ...
- 【转】【技术博客】Spark性能优化指南——高级篇
http://mp.weixin.qq.com/s?__biz=MjM5NjQ5MTI5OA==&mid=2651745207&idx=1&sn=3d70d59cede236e ...
- Webbrowser中显示MHT文件
把MHT文件存成临时文件,用WEBBROWSER的Navigate方法打开,代码如下: //从程序集中读取资源文件 Assembly asmm = Assembly.GetCallingAssembl ...
- RecyclerView 介绍 01
RecyclerView是Android support v7里面是一个自定义控件.用来显示大量数据集合.类似ListView和GridView这两个控件,RecyclerView同样可以实现,甚至更 ...