数据库高并发写入,怎么降低数据库的压力?

数据库高并发写入,怎么降低数据库的压力?,第1张

主要通过架构设计来减少高并发对数据库的压力;

比如 在数据库和应用程序之间,增加 DAL层,通过代理,连接池等,保证数据库与业务程序由一定的缓冲和关系梳理;

在数据库前面,加一个缓存层,让大部分数据访问,都直接在缓存层获取数据,不用访问到后端的MySQL数据库;

fikker 让网站响应加速 10 倍以上, 减少数据库压力 90% 以上:

页面缓存:目前网上的大部分页面都是由网站程序动态生成的,例如 ASP,PHP,JSP等页面都是网站动态生成的,这种页面在被生成的时候,大部分都会读取数据库,在访问量比较小的时候,数据库尚可胜任,在访问量较大的时候,数据库就会严重延迟甚至不堪重负。因为数据库的大部分数据存放在硬盘上的,并且硬盘数据交换的能力相对于内存来说是极低的(相差10倍以上),所以当数据库频繁读取硬盘数据的时候,网站系统的负载能力便会大大降低,硬盘IO就成为了网站响应速度的瓶颈。Fikker 提供了动态页面缓存能力,对于频繁读取的动态页面,可以将其缓存在 Fikker 页面缓存中,当浏览器访问的时候,就不再需要网站程序重新读取数据库和重新编译页面,系统的吞吐能力大大的提高,极大的抵消了频繁读取数据库带来的瓶颈,网站的响应速度会有 10 倍以上的提升。加速举例:一个热门商品或热点新闻页面,1分钟内有1万次的访问量,如果这些页面都由网站生成,就会读取1万次数据库并重复生成1万个的页面;如果 Fikker 将这个页面缓存1分钟,一分钟内只会读取1次数据库并生成1次页面,网站和数据库的负荷就会大大的降低(10倍以上),所以越是负荷较大的网站,加速效果感觉上越明显。

压缩传输:绝大部分基于文本的页面(asp, php, jsp, html, js, css, txt等)进行 gzip/compress/deflate 压缩以后,相对于非压缩页面会减少大约75%的尺寸。例如:一个100K字节的页面,压缩以后大约在20K - 25K字节左右,如果这种压缩过的页面被缓存后再传输,会显著的提升传输效率,加快网页传输加载的速度,而且还很经济(减少了带宽支出)。Fikker 内置了 gzip 页面压缩功能,既减少了内存的占用,提升了传输效率,又降低了带宽的占用。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6691323.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存