最近这几个月,老郭目前使用的轻量应用服务器已经出现过好几次异常情况了,表现为TCP连接数量始终保持在很高的水平,进而造成CPU利用率飙升、内存利用率几乎达到了100%,内网带宽和磁盘使用率也非常的高。这一系列的问题导致轻量服务器处于严重卡顿的状态,宝塔后台和网站均无法打开。
老郭并不清楚是什么造成了这一系列的问题,按照道理来说,老郭博客几乎是没有什么人访问的,绝大部分时候都是各家的蜘蛛在爬,更不要说有什么人会闲得无聊来攻击老郭的轻量应用服务器。而且退一步说,如果真的有人攻击的话,那么服务器会被腾讯云直接设置为“黑洞”模式的,而不是资源占用过高的情况。
老郭想了很久,把目标锁定在了云数据库上面。今年腾讯云推出了低价的云数据库促销活动,老郭使用的轻量应用服务器只有2C2G。为了减轻轻量应用服务器的压力,老郭博客开始使用云数据库。虽然云数据库的性能要远远的好于自建的数据库,而且安全性非常的高,压根不需要老郭再去考虑备份的问题了,但也就是在使用了云数据库之后,老郭的轻量应用服务器多次出现了异常情况。而在之前没有使用云数据库的时候,老郭的网站已经稳定的运行了将近200天了。
老郭猜测,由于腾讯的轻量应用服务器与云数据库无法直接通过内网连接,必须要通过云联网来实现,而云联网的可靠性目前老郭还没有找到更多的数据支撑。所有,有一种可能性,在某一时间,当同时有多个蜘蛛在访问网站的时候,轻量应用服务器和云数据库之前的连接就会出现无限的循环,从来造成轻量应用服务器一直处于很高的TCP连接状态。
不过,以上都仅仅是老郭的猜测而已,况且,以老郭的技术,也不可能拿出任何的证据来证明。好在云数据库很快就要到期了,届时老郭将会用回到自建数据库,到时候一切真相自然会水落石出。