上一篇:ASP 编程中 20 个非常有用的例子 >>
asp+sqlserver 在海量数据操作的问题与解决思路
1, 所有记录在一张表上。没有分类
2, 开发时,由于没有考虑这么大量的数据。查询语句放在程序中执行,造成速度过慢
3, 根据关系型数据库的插入过程原理,每插入一次,建一次索引查询,那么,将占用大量的内存与CPU资源,速度也将大大降低。在表中有100条记录的情况下插入与在10000条记录的情况下插入,速度与效率是完全不一样的!
4, 插入与查询是在同一张表里。并发处理数可能峰值有1000多。
5, 根据关系型数据库的查询原理,如果有人要查询记录表,将会是这样的一个数学表达式
一条记录 <=1K
总共100,000条记录,每天2万的增长速度
如果不知条件,任意查询,那将会是这样:
(1K * 100,000)/1024 = 10M
1个人是10M。如果是200个人同时查,那将会是这样:
200*10M = 2000M (约2G)
这样大的数据被数据库中取出来。并下载到本机查看,本来就是很庞大的。
6, 各输入网点的网速很多还是“猫”上网,速度肯定跟不上。
7,服务器中还存放着其它的数据等等。
7, 服务器带宽只是专线8M,就算服务器的CPU能计算得过来,数据也送不出去,就被挤塞了!
由于上述问题,出现的情况如下:
1, 网站服务器硬盘物理烧毁一块。
2, 网站带宽被完全占用,基本难以访问。
3, 网站页面速度极其慢,数据传输效率低。
4, 有些个输入单位由于网速无法响应他的操作,送出的数据包无法返回,已无法完成记录输入。
解决办法(思路):
1, 服务器更新。(硬件上)
2, 网络带宽增加。(硬件上)
3, 把查询放在数据库中进行,使用存储过程,但在百兆网速下,存储过程的应用基本与程序查询没什么明显区别。(软件上)。
4, 插入记录时,使用缓冲表,每10分钟,将缓冲表向主记录表倒一次数据。这样可以缓解主记录表的压力。让主记录表专门应对查询动作(软件上)
5, 查询时,使用文本读出记录,因为基于系统底层的指计移动,查询效率将会提高100倍。但是需要FileObjectSystem组件支持。安全性要考虑。(软件上)
如果不采取措施,会引起的问题:
数据库不堪重负,硬盘会再次烧毁。
服务器CPU一直处在100%满负荷下运行。
程序系统完全崩溃。
数据无法即时插入,无法即时反应。
无法统计与追踪。
各网站无法正常运行。
下一篇:用ASP编写网络传呼机 >>
相关文章:
- · 一个分页的类
- · 跟我学做在线调查(四)
- · 跟我学做在线调查(三)
- · 跟我学做在线调查(二)
- · 跟我学做在线调查(一)
- · 跟我学做树型菜单(四)
- · 跟我学做树型菜单(三)
- · 跟我学做树型菜单(二)
- · 跟我学做树型菜单(一)
- · ASP漏洞大全
- · 2yup漂流祈愿瓶大家一齐做(四)
- · 2yup漂流祈愿瓶大家一齐做(三)
- · 2yup漂流祈愿瓶大家一齐做(二)
- · 2yup漂流祈愿瓶大家一齐做(一)
- · 化境ASP无组件上传类 - upload_5xsoft 使用手册 1.0
- · 不用编程,得到一个用户QQ在线状态
- · 跟我学做留言本(三)
- · 跟我学做留言本(一)
- · 取得浏览者的离开时间
- · 万年历原程序
- · 傻瓜型的分页实现
- · ASP无组件上传·从原理剖析到实践(下)
- · ASP无组件上传·从原理剖析到实践(中)
- · ASP无组件上传·从原理剖析到实践(上)
- · ASP编写的一个简单的颜色吸取器
- · 一个关于日期选择的很实用的小东西
- · 用Asp隐藏文件路径,实现防盗链
- · 利用@字符实现二级域名系统
- · 一个asp无组件上传的实例
- · 最短的无组件上传代码(仅9行)
- · 6行代码实现无组件上传
- · 一个asp无组件上传的实例
- · 计算文件下载时间
- · 无组件文件上传源代码
- · ASP + Serv-u 实现FTP的代码
- · ASP 中 Split 函数的实例
- · 如何在生成的静态页面中显示文章被阅读的次数
- · 用通ASP直接获取用户真实IP地址
