系统缓冲区耗尽

系统缓冲区

简介

缓存是CPU的一部分,它存在于CPU中 CPU存取数据的速度非常的快,一秒钟能够存取、处理十亿条指令和数据(术语:CPU主频1G),而内存就慢很多,快的内存能够达到几十兆就不错了,可见两者的速度差异是多么的大,缓存是为了解决CPU速度和内存速度的速度差异问题。

解决问题过程

System.AggregateException: One or more errors occurred. ---> System.Net.Sockets.SocketException: 由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作。

看着信息的提示应该是socket资源被耗尽了。第一反应就是重启系统,但是这只是应急的做法,后面一定还会出现,一定是程序哪里不对了。

 

首先,通过命令查看一下端口的占用情况

1

netstat -ano

果然有大量的Tcp连接处在了 FIN_WAIT_2 的状态,并且都是访问同一个地址,这个6379端口是Redis服务常用的端口(先怀疑是redis服务),

现在的问题就是定位是哪个进程了,根据提示 Pid=13220,使用命令(或者打开【任务管理器】)

1

tasklist

我遇到的问题是 这个PID根本就不存在,这可怎么整,这个进程可能早就被回收了。突然间我想到是不是事件查看器能有些线索?

我打开的【事件查看器】,找到了【系统】,右键进行查询,果然找到了问题症结所在。

 

我打开这个站点的配置文件,看到了那个redis的配置,是个域名!  ping一下这个域名

果然各种连不上,IP也对上了! 我们公司的策略连不上是正常的,这个配置不应该使用正式版的配置。

系统缓冲区耗尽常见问题

1、虚拟内存太小或者C盘满了。如果是这种,请自己查资料加大虚拟内存量,并保证C盘还有充足的空间。

2、是你电脑里面某个软件的问题。
这个错误可能是你计算机的Socket句柄资源用尽导致的,能够造成这种现象的一种情况就是你的计算机的某个程序不断的向某个连接发出连接申请,但是始终没能连上,没连上就会引发一个错误,如果编程的人没有写释放资源的代码,那么这个连接就始终占据着着一个句柄,于是由于不断的连接,最终导致Socket句柄资源耗尽。
如果你运行的都是很正常的程序,那么很可能进行连接的就是一些木马程序,比如盗取密码的程序需要将盗取的密码发送到某台机器上等等。如果杀毒没杀到,就装个防火墙看看,追求干脆的话就重新安装系统

3、注册表中的以下二项出现错误
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Winsock
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Winsock2

解决办法:备份,然后找一台相同系统的机器,将以下注册表分支导出存为二个文件,
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Winsock
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Winsock2

最后将这二个导出的注册表文件导入到有问题的机器中即可

4、WannaCrypt(永恒之蓝) down.bddp.net 勒索蠕虫

 5月15日,微软发布安全补丁修复了CVE编号为CVE-2019-0708的Windows远程桌面服务(RDP)远程代码执行漏洞,该漏洞在不需身份认证的情况下即可远程触发,危害与影响面极大。 所以杀掉powershell进程,安装windows补丁吧。

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值