服务器应用服务为何卡顿?原来是内存耗尽惹的祸!

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

       今天在这我跟大家分享一个案例及其解决办法。以前我跟很多朋友们也为这样的事情苦恼过,我的服务器内存可是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://www.mzph.cn/news/312226.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

matlab 传感器的迟滞,MATLAB PI迟滞模型问题

之前我用matlab进行迟滞模型建模,误差非常大,我之前怀疑是自己的参数辨识出问题了,所以我用论文中的阈值向量和权重向量进行建模,输入数据也是用论文数据,但是出来的拟合的线误差非常大,和文献中相差太大。…

(2)MongoDB副本集自动故障转移原理(含客户端)

前文我们搭建MongoDB三成员副本集,了解集群基本特性,今天我们围绕下图聊一聊背后的细节。默认搭建的副本集均在主节点读写,辅助节点冗余部署,形成高可用和备份,具备自动故障转移能力。集群心跳保活集群每个节点以周期性…

matlab如何使用cu文件,Matlab编译cuda的.cu文件

matlab函数,大体首先是用nvcc命令生成.o文件,然后用mex链接对应库文件,生成动态链接库(.mexw64等)。测试环境:1) Windows x64 matlab cuda 5.5 vs20122) Ubuntu 12.04 amd64 server matlab gcc cuda 5.5windows用户需要根据…

C++map容器-查找和统计

map查找和统计 功能描述&#xff1a; 对map容器进行查找数据以及统计数据 函数原型&#xff1a; 代码如下&#xff1a; #include <iostream> using namespace std; #include <map> //map容器 查找和统计void test01() {//查找map<int, int >m;m.insert(p…

C++map容器-插入和删除

map插入和删除 功能描述&#xff1a; map容器进行插入数据和删除数据 函数原型&#xff1a; 代码如下&#xff1a; #include <iostream> using namespace std; #include <map>//map容器 插入和删除 void printMap(map<int, int> &m) {for (map<in…

你需要了解的 JIT Debugging

如果你还不清楚什么是转储文件&#xff0c;不知道什么时候需要转储文件&#xff0c;请参考转储文件系列文章的第一篇 —— 转储文件知多少。前言 我在 你需要知道的 N 种抓取 dump 的工具 的工具 这篇文章里&#xff0c;向大家介绍了几款可以抓取转储文件的工具及其简单用法。不…

超越“迁移”的思考:应用程序该如何被Kubernetes接管?

传统虚拟机&#xff08;VM&#xff09;的可扩展性差强人意&#xff0c;但Kubernetes可以快速&#xff0c;无缝地扩展正在运行的服务。Kubernetes将容器、集群以及广泛的抽象配置方法引入桌面&#xff0c;用于提升部署和变更管理体验&#xff0c;从而使人们对Kubernetes关注更多…

C++string容器-字符串拼接

string字符串拼接 功能描述&#xff1a; 实现在字符串末尾拼接字符串 函数原型&#xff1a; 代码如下&#xff1a; #include <iostream> using namespace std; #include <cstring>//string字符串拼接 void test01() {string str1 "我";str1 "爱…

如何运用领域驱动设计 - 存储库

概述在上一篇文章<如何运用领域驱动设计 - 聚合>中&#xff0c;我们已经了解过领域驱动设计中一个很核心的对象-聚合。在现实场景中&#xff0c;我们往往需要将聚合持久化到某个地方&#xff0c;或者是从某个地方创建出聚合。此时就会使得领域对象与我们的基础架构产生紧…

C++string容器-字符串查找和替换

string查找和替换 功能描述&#xff1a; 查找&#xff1a;查找指定字符串是否存在 替换&#xff1a;在指定的位置替换字符串 函数原型&#xff1a; rfind 和find 的区别&#xff1a; rfind从右往左查找 find从左往右查找 查找案列代码如下&#xff1a; #include <iostrea…

如何运用领域驱动设计 - 工作单元

概述在上一篇 《如何运用领域驱动设计 - 存储库》 的文章中&#xff0c;我们讲述了有关仓储的概念和使用规范。仓储为聚合提供了持久化到本地的功能&#xff0c;但是在持久化的过程中&#xff0c;有时一个聚合根中的各个领域对象会分散到不同的数据库表里面&#xff1b;又或者是…

C++string容器-字符串比较

string字符串比较 功能描述: 字符串之间的比较 比较方式&#xff1a; 通常用来比较两个字符串是否相等 函数原型&#xff1a; 代码如下&#xff1a; #include <iostream> using namespace std; #include <cstring> //string字符串比较void test01() {string…

国产自主研发编程语言火了,同行十二年,不知Python是木兰?

1月17号有媒体称&#xff0c;一款面向智能物联网和编程教育的号称自主研发语言横空出世&#xff0c;名为【Mulan 】。消息一出&#xff0c;引起了众多争议。但有知乎网友发现&#xff0c;下载的程序包解包后——是个 Python&#xff1f;何为木兰&#xff1f;1月17号&#xff0c…

C++string容器-字符存取

string中单个字符存取方式有两种 代码如下&#xff1a; #include <iostream> using namespace std; #include <cstring>//string 字符存取 void test01() {string str "hello";cout << "str " << str << endl;for (int i…

有了容器为什么kubernetes还需要Pod?

简介容器并不是软件开发的银弹&#xff0c;没有任何一种技术能解决软件开发中的所有问题当我们采用容器化技术的时候&#xff0c;摒弃了传统的物理机或者虚拟机的部署方式&#xff0c;以一种更加轻快&#xff0c;便捷的方式来部署我们的应用。到容器化的进阶&#xff0c;再加上…

C++string容器-插入和删除

string插入和删除 功能描述&#xff1a; 对string字符串进行插入和删除字符操作 函数原型&#xff1a; #include <iostream> using namespace std; #include <cstring>//字符串 插入和删除 void test01() {string str "hello";str.insert(1, "…

.NET绘制旋转太极图

前言我之前发了一篇《 用.NET写“算命”程序》的文章&#xff0c;但有人纷纷提出了质疑&#xff0c;认为没有“科学”&#xff08; mi xin&#xff09;依据????。所谓“太极生两仪&#xff0c;两仪生四象&#xff0c;四象生八卦&#xff0c;八卦定吉凶&#xff0c;吉凶生大…

.NET CORE(C#) WPF 抽屉式菜单

.NET CORE(C#) WPF 抽屉式菜单阅读导航本文背景代码实现本文参考源码1. 本文背景使用简单动画实现抽屉式菜单2. 代码实现使用 .NET CORE 3.1 创建名为 “AnimatedColorfulMenu” 的WPF模板项目&#xff0c;添加1个Nuget库&#xff1a;MaterialDesignThemes&#xff0c;版本为最…

C++string容器-子串获取

string子串 功能描述&#xff1a; 从字符串中获取想要的子串 函数原型&#xff1a; 代码如下&#xff1a; #include <iostream> using namespace std; #include <cstring>//string求子串void test01() {string str "abcdef";string subStr str.sub…

我的 .NET Core 博客性能优化经验补充

点击上方蓝字关注“汪宇杰博客”导语去年年底我写了一篇《我的 .NET Core 博客性能优化经验总结》&#xff0c;但后来还发现有一处遗漏需要补充。我们一起来看看~牺牲空间换时间我们知道软件设计只有高手才能做到又小又快&#xff0c;像我这种普通程序员通常只有两种方案&#…