做的网站联盟目前大概有1000多个,每个单独的网站都有一部分数据是通过webservce到数据库总服务器《独立的服务器》获取的现在的问题是:数据库承受不了这么多网站的访问(百度爬虫很频繁的访问每个独立网站服务器,从生成的静态缓存页面可以看出来,经过爬虫的服务器,每次缓存都会增长几百M),老在数据库连接超时;
现在已经为每个单独的网站建立了静态缓存,但访问没有缓存的页面时,有时候还是会连接超时;访问的主要有三个表,每个表中的数据都在100W左右,用SQL性能工具(SQL SERVER PROFILER)监视时,同一条SQL语句有时候查的很快,有时候查询的很慢,我估计是并发时造成的阻塞具体原因不清楚已经对每个网站访问webservice的次数据进行了优化,比如一个页面有三个位置要显示总服务器的数据,查询数据库时,将三个表的数据组成一个DataSet,然后返回到对应的网站数据库中建立索引,关键字查询时建立全文索引等等差不多已经优化到了极致,优化得我大脑都快萎缩了,但偶尔还是会出现数据库超时,如果以后1000多个网站有几十,几百个流量大了,这样的情况肯定会让数据库服务器直接挂掉的。。压力大啊!!!求大鸟来解困也。。
现在已经为每个单独的网站建立了静态缓存,但访问没有缓存的页面时,有时候还是会连接超时;访问的主要有三个表,每个表中的数据都在100W左右,用SQL性能工具(SQL SERVER PROFILER)监视时,同一条SQL语句有时候查的很快,有时候查询的很慢,我估计是并发时造成的阻塞具体原因不清楚已经对每个网站访问webservice的次数据进行了优化,比如一个页面有三个位置要显示总服务器的数据,查询数据库时,将三个表的数据组成一个DataSet,然后返回到对应的网站数据库中建立索引,关键字查询时建立全文索引等等差不多已经优化到了极致,优化得我大脑都快萎缩了,但偶尔还是会出现数据库超时,如果以后1000多个网站有几十,几百个流量大了,这样的情况肯定会让数据库服务器直接挂掉的。。压力大啊!!!求大鸟来解困也。。
解决方案 »
- 导出数据到Excel,能给出一个好的解决方案吗?
- 问个JS问题:如何使激发事件后页面回到最上边?
- |M| 求SQL语句 得出A数据库和B数据库不同的表 谢谢
- 正则表达 去掉A标记 进来拿分。。。。。。。。
- gridview列自定义邦定数据的错误怎么捕获啊
- 关于listbox的排序问题
- javascrpt中能否象C#一样自定义事件;知道的朋友给说说,举举例子。在线等答案!!!!!!!!!
- 出现提示框(确认,取消)后,怎么知道点的是'确认'?
- 急,请高手帮忙,在线等!——怎样让aspx程序以IIS管理员的身份运行?
- 寻找达人助我..关于访问局域网内部网站问题
- 定时发布微博(求思路)
- 网站统计,如果从IIS日志中取出准确的访客量(也就是相当于取到独立IP的数量)..
搞清楚瓶颈到底出在哪里?
通过分析程序,和监控数据库 你应该可以找出访问最频繁的数据表。对于这些数据表 再继续进行分析,将其分为两类
1 查询最频繁的数据表 每个查询语句都使用with no lock
2.对于查询很多 但是很少修改的表 可以考虑将其放入缓存中 这样就不需要到数据库中查询这些内容了。
——————
不好意思 我是用手机来回复 打字吃不消了,先说这么多。
站”在程序中有没有使用cache?
像这样的网站 你应该从整个架构上考虑cache的使用。
网站——cache——数据库