博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
360多万条信息把一台服务器快拖卡了
阅读量:4543 次
发布时间:2019-06-08

本文共 869 字,大约阅读时间需要 2 分钟。

网站问题

  前些日子有用户反映"网站慢","网站打不开了"。。。自己看看确实比平常慢很多。

网站概况及压力

  先简单介绍一下用户反映的网站,以便您对这个网站及数据库压力有个大致了解。

  该网站是一个分类信息网,压力理所当然的落在了信息处理上。针对信息处理,带给数据库的压力主要有两点:

1.网站首页会读取信息表Info;
2.信息列表页会读取信息表Info;
  据统计,这个时候信息表Info已有360多万条数据。每个用户访问网站首页或细信息列表页都必须从360多万条数据中
找出想要的数据。从而造成了”网站慢“等诸多问题。
  从这个角度看,就当前的网站架构来说,360多万条数据已经成了这个系统所能承受压力的上限了。

解决此类问题途径

  处理此类问题我们应该有所了解,诸如:优化网站架构,使用缓存,使用分布式等等。考虑到这些并不是本文重点,加

上自己对这些不是很上手,所以就不叙述了。

解决方法

  使用"分表法",所谓的"分表法"就是把信息表Info前最新的几万条或几十万条数据的主干取出来放另一个新的信息表NewInfo,

尽量遵循"在保证让用户能完整看到信息的前提下,表NewInfo里存的字段,越少越好,也尽可能减少表连接。"的原则。这样网站

首页和信息列表页显示数据就可以从NewInfo里读取。想一下从几万条取数据跟从几百万条中取数据当然是前者快了。也许您会有

疑问,那Info中其他的数据不要了吗?别急,看完您也许就会理解这样做并非不可。

  当然,这样做也会对信息的修改带来一点麻烦(因为要保持数据的一致性)。但比较一下,你会发现利是大于弊的。

小结

  分类信息网站在信息量大的情况下,每天都会有大量的信息出现。如果你要把几百万甚至几千万的数据都从数据库展现出来。

又有哪一位用户会看的完呢。再者用户需要的是及时的信息。

  如果您有使用过"赶集网"或"58同城",您会发现它们的大部分信息来源也是当天的。

 

转载于:https://www.cnblogs.com/paulhe/p/3865098.html

你可能感兴趣的文章
关于AutoCAD 2014的securityload…
查看>>
BM和KMP字符串匹配算法学习
查看>>
常用基本命令四(用户管理命令) - 黑猴子
查看>>
项目管理知识1
查看>>
在window环境下安装Python中的pip
查看>>
A大龙插件官方群3:621816328
查看>>
oi再见,你好明天。
查看>>
2018 Multi-University Training Contest 1 - D Distinct Values (STL+双指针)
查看>>
js学习笔记一-语法结构
查看>>
键盘对应的键值
查看>>
goLang 纳秒转 毫秒 转 英文时间格式
查看>>
微信小程序的坑坑
查看>>
图片轮播(Jquery)
查看>>
hdu 1704 Rank(floyd传递闭包)
查看>>
Educational Codeforces Round 27 G. Shortest Path Problem?(Guass异或线性基)
查看>>
【BZOJ3622】已经没有什么好害怕的了(动态规划+广义容斥)
查看>>
HDOJ 1023 Train Problem II
查看>>
途牛订单的服务化演进
查看>>
软件工程之四则运算
查看>>
ABAP 根据权限显示或隐藏状态栏的按钮
查看>>