- 相关文章 (12)
- QBlog隐藏技巧 (2)
- 爱说说系列 (4)
- QBlog 开源发布 (2)
- QBlog版本发布 (8)
- QBlog 模板制作教程 (6)
- QBlog开发者视频教程 (6)
- 秋色园技术原理解析 (21)
- 秋色园QBlog技术原理解析:开篇:整体认识(一)(2941)
- 秋色园QBlog技术原理解析:UrlRewrite之无后缀URL原理(三)(2322)
- 秋色园QBlog技术原理解析:认识整站处理流程(二)(1689)
- 秋色园QBlog技术原理解析:性能优化篇:用户和文章计数器方案(十七)(1633)
- 秋色园QBlog技术原理解析:UrlRewrite之URL重定向体系(四)(1398)
- 秋色园QBlog技术原理解析:博客一键安装工具技术实现[附源码下载](1335)
- 绑定一级域名(顶级域名)到秋色园QBlog博客教程(1311)
- 秋色园QBlog技术原理解析:Module之页面基类设计(五)(1253)
- 如何安装部署秋色园CYQBlog站点(1178)
- 调查:是否支持秋色园QBlog走进开源博客之路(1167)
- 调查:是否支持秋色园QBlog走进开源博客之路(30)
- 秋色园QBlog技术原理解析:UrlRewrite之无后缀URL原理(三)(22)
- QBlog开发者视频教程:开篇-开发基础配置与系统运行(一)(13)
- 秋色园QBlog技术原理解析:开篇:整体认识(一)(13)
- Windows7下如何安装部署秋色园CYQBlog站点(12)
- CYQ.IIS 无需要安装IIS运行QBlog网站(11)
- 开源博客CYQ.Blog 秋色园QBlog 源码下载[免费开放24个下载码](11)
- 开源博客-秋色园QBlog多用户博客系统安装视频教程(10)
- 如何安装部署秋色园CYQBlog站点(10)
- 秋色园QBlog技术原理解析:博客一键安装工具技术实现[附源码下载](9)
早些年写的秋色园技术原理解析系列,相信看过的都清楚,从开始到现在,还是铁打的Access数据库,虽然本人对Access恨入之骨,皆因囊中羞涩,不得不与之同流合污。
由于网站时不时的要出点问题,或需求时不时的产生些变化,导致秋色园技术上需要不断的更新,不断的优化,经过不停的努力,CPU降下来了,内存降下来了,以为一切安然的时候,它时不时的还是会出现些问题。
就在前天,服务器让客服给直接关机了,理由是:CPU持续三小时100%,IO磁盘每秒读写50M,为不影响其它用户,直接给关了,让处理完再开机。
前面的CPU百分百是忽悠我的,因为你对客户说,因磁盘读写问题而关机,比较悬,如果说CPU满了而关机,都直观容易理解。
不过,因为刚才我还在看着服务器,CPU正常,根本不可能持续三小时百分”(当然了,偶尔应用程序池刚重启时,瞬时十来秒上到100%这个我知道,由于是短暂的,我一直没查明真相)我让客服给我截图,并恢复开机,我说CPU我会处理。
神奇的客服,给我截了另一张图,说我磁盘读写超标,让我处理完再开机。

从这图看的出来,这台服务器上至少挤了好几十个VPS用户了。
磁盘读写超标,是件很悬的事件,首先这超标的标准是什么?硬盘每秒读写速率达到多少才算超标?这超标又怎么影响到其它用户了?
当然了,谁家的网站不经常读写IO呢,这VPS就这么丁点内存,肯定重点就会转发到硬盘去了,习惯性思维以为是自己的程序问题,因为实在平时对磁盘读写没怎么在意,好像开发这么久,还没怎么和磁盘的负载扯上关系,这一块是一片空白。
于是,当开机后,用户一张一张的截图,说让我处理,着实把我弄急了:
没办法,我只好暂时把秋色园网站停止,说我要去吃饭了(八九点还不让人吃饭),然后问客服,降下来没有,客服说:我看到依然还是有问题 。 我先断开你的网络把,你吃完饭后回来 联系我处理。
我急了,肯定不能断开网络了,毕竟微博粉丝精灵服务还在运行,没办法,我下了下手,把粉丝精灵服务也给关了,问,现在正常了没有,客服又来一张图说:现在正常一些了 0.59是1分钟内的负载,1.68是五分钟内的平均负载

我特纠结,服务器一共就两网站,这全都关了,你只是正常了点,靠,直接把远程密码发给对方,你去折腾,我去吃饭。
快速吃完回来问客服情况怎样,对方三弄几弄,说正常了,我问弄什么了,对方说:“App_Data 这个目录 我随便改了名字。 除此之外 我都没有动 ”。
这目录下就放着数据库,我说难道和数据库有关?里面有一个数据库600多M(文章表)。
客服说可能,但不确定。
于是我把秋色园解析解到其它地方,然后再开启网站,自己访问一下,才刚开,客服马上问我干啥了,负载又上去了,弄的我只好网站又停了,停了还没用,客服一样叫高,接着又来一张图:

说实在,我都不明白这些代表啥意,于是问了,这些怎么看,对方回答“高于 1 即资源超载,三个数字1分钟,5分钟,10分钟内的系统平均负载”。
我纠结了:不占cpu,不占内存,不占带宽,如果磁盘也不占,这网站怎么折腾?
还有这磁盘,是读高,还是写高?
对方答复“只能看一个系统分析值 ,就是VPS虚拟化自带的分析图”。
接下来,我又把数据库的文件夹给改名了,看似得到的回复是正常了,瞬时好似问题的根源,就在于600多M的Access数据库上。
后续的问题,就是把它分成了10个库,用的CYQ.DBImport在远程直接操作分库,改了下算法,终于,客服不再叫了,远程操作变流畅了。
最后总结:
当Access的数据库大小超过内存的大小时,相关问题主要表现在磁盘读写超标(这个正常没法知道),界面影响特卡(可能会以为是CPU或内存问题),还会影响到其它VPS用户(这个更不可能得知了),同时应用程序池重启变慢(会误以为是程序写的不好)。
为此,Access虽然上限是2G,具体还得看你内存有多少。
太困了,本文只好草草收笔了,后续再编辑下发布到其它地方。

