各位兄弟,小弟说负责的服务器最近的内存一直升高,直到宕机。内存分析的结论是:内存泄漏。
代码问题点:
Cipher ci = CiphergetInstance("RSA", new BouncyCastleProvider());
代码修改正点:
public static synchronized BouncyCastleProvider getInstance() {
if (bouncyCastleProvider == null) {
bouncyCastleProvider = new BouncyCastleProvider();
}
return bouncyCastleProvider;
}
如果服务器内存过高,您的站点有可能会出现打不开,这时您需要登陆服务器重启一下IIS或者服务器都能暂时的解决网站打不开问题,但治标不治本。建议您平时做好数据备份的习惯,避免重启导致数据丢失。如果服务器内存经常爆满,建议换大内存的。希望我的回答能帮到您。
最近搞虚拟化也遇到了这个问题。查了一下进程管理器,发现域服务本身就占用了很大内存。其他虚拟机内存需求512mb,域控需要1900mb,但增占率不是很高。不知道对你有有帮助。查一下日志看看是否被攻击了?
SQL Server运行越久,占用内存会越来越大。因为sql server本身内存回收机制做的不好,这是微软系列的服务器&数据库问题的通病。
解决SQL Server占用内存过高的方法:
1定期重启SQL Server 2008 R2数据库服务即可。
2进入Sql server 企业管理器,在数据库服务器名称上点击右键,选择属性,然后,找到内存选项,在右边的使用AWE分配内存(sqlServer64的应该不用勾)左边把对勾打上。在最大服务器内存(MB)上填入适当的大小(不能超过计算机的物理内存)点确定,重启一下Sql服务器。
SQL Server 是Microsoft 公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2012 的大型多处理器的服务器等多种平台使用。
Microsoft SQL Server 是一个全面的数据库平台,使用集成的商业智能 (BI)工具提供了企业级的数据管理。Microsoft SQL Server 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。
Microsoft SQL Server
0条评论