博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
服务器应用服务为何卡顿?原来是内存耗尽惹的祸!
阅读量:4033 次
发布时间:2019-05-24

本文共 1089 字,大约阅读时间需要 3 分钟。

       做过运维的朋友们都可能会遇到:服务器应用程序运行慢的问题,最终各部门找上门,

       今天在这我跟大家分享一个案例及其解决办法。以前我跟很多朋友们也为这样的事情苦恼过,我的服务器内存可是64G啊,这都不够它吃的

       后来我打开任务管理器一看原来是内存耗尽惹得祸,内存使用99%,CPU使用70%~100%之间变动,如果访问应用的时候,服务器立马变成100%,空闲时慢慢降下一点来。再看进程里面的变化,你就会发现SQL Server进程占用99%的内存,这时我才恍然大悟,原来是数据库捣的鬼,

       捣蛋鬼找到了,但还没发现它是怎么捣蛋的,根据现象分析,服务每次重启都得过一段时间才会出现这样的问题,并且基本上一个礼拜后才出现这样的问题。经过查询资料知道,SQL Server在运行的时候会把访问过的数据缓存起来,以提高再次访问效率,也就是说内存耗尽的根找着了,

      分析到这里,很多朋友们可能都有解决办法了,就是设置数据库本身可以设置其使用的内存大小,灵感立马来了,赶紧去设置数据库使用的内存大小,下面给大家简单说一下配置方法,以SQL Server 2012为例:

1、首先打开数据库管理器;

2、然后在服务器名称上点右键选属性;

3、再点击内存,进入内存选项配置界面

设置完后,运行一段时间以后另一个问题又出现了,虽然服务器运行一段时间以后数据库把配置的内存吃完了,但是不会出现服务器死机卡顿现象,可应用服务程序运行还是会慢。

啊啊啊    只能出大招了

设置周期性重启SQL Server 2012 R2服务,下面给大家介绍一下方法:

1、建立一个重启SQL Server 2012 R2服务批处理文件。

首先,新建一个txt文档

接着,在刚才建的文档中输入一下命令

    net stop sqlserveragent

    net stop mssqlserver
    net start mssqlserver
    net start sqlserveragent

最后,保存文件名为ResetSqlServer,扩展名为bat

2、设置一个计划任务(我服务器系统是Wondows Server 2012),定时自动执行上面新建的批处理文件。

首先,进入控制面板,点击“查看方式”选“小图标”

接着,单击管理工具进入界面,双击“计划任务程序”,进入如下界面

再接着,单击创建任务,并输入任务名称,点确定保存

再接着,新建触发器,设置好后,点确定保存

提醒:开始时间一定设置成空闲时间

最后,新建操作,点击浏览按钮,选择刚刚建好的批处理文件ResetSqlServer.bat

到此为止,大功告成,修成正果!

转载地址:http://qegbi.baihongyu.com/

你可能感兴趣的文章
Maven跳过单元测试的两种方式
查看>>
通过C++反射实现C++与任意脚本(lua、js等)的交互(二)
查看>>
利用清华镜像站解决pip超时问题
查看>>
[leetcode BY python]1两数之和
查看>>
微信小程序开发全线记录
查看>>
Centos import torchvision 出现 No module named ‘_lzma‘
查看>>
PTA:一元多项式的加乘运算
查看>>
CCF 分蛋糕
查看>>
解决python2.7中UnicodeEncodeError
查看>>
小谈python 输出
查看>>
Django objects.all()、objects.get()与objects.filter()之间的区别介绍
查看>>
python:如何将excel文件转化成CSV格式
查看>>
Django 的Error: [Errno 10013]错误
查看>>
机器学习实战之决策树(一)
查看>>
[LeetCode By Python] 2 Add Two Number
查看>>
机器学习实战之决策树二
查看>>
[LeetCode By Python]7 Reverse Integer
查看>>
[LeetCode By Python]9. Palindrome Number
查看>>
[leetCode By Python] 14. Longest Common Prefix
查看>>
[leetCode By Python]111. Minimum Depth of Binary Tree
查看>>