高性能之应用层优化
高性能之应用层优化
不要使用web服务器来做静态内容服务,或者减少和动态服务使用不同的实例。
请求一个css文件或图片没必要用一个固定占用50或100M的线程。
用静态内容服务器做代替,Nginx,lighttp
使用缓存代理服务器,比如squid或varnish,esi(edge side includes)将部分页面中小块的动态内容潜入到静态缓存中
缓存过期策略,
主动缓存,将请求转发给应用服务器生成缓存squid
被动缓存,要么有要么没有,memcache
应用层缓存
本地缓存,一个变量或者哈希表
本地共享内存缓存
分布式内存缓存,memcache,适合存储共享对象,需考虑一致性问题
磁盘上的缓存,持久化对象
缓存控制策略
TTL(time to live),清理进程负责删除
显示失效,写失效,标记缓存数据已经过期;写更新,更新缓存时替换缓存项
读时失效,相比显示失效可以做避免出现负载冲高和延迟增大。通常采用版本控制
缓存陷阱,假设缓存命中率百分之九十,突然失效,会导致数据库压力,所以缓存设计需考虑高可用
相关推荐
yuanlu 2020-08-17
dahege 2020-05-29
Antech 2020-05-04
hazing 2020-02-19
89241846 2019-11-19
过儿古墓 2011-01-14
昭君出塞 2019-11-05
LandryBean 2019-10-23
grantlee 2015-05-24
88251048 2015-05-21
yanghan 2015-05-18
qlf00 2012-01-01
ITlover00 2019-07-01
84123156 2019-06-29
hxf0 2019-06-29
89590599 2019-06-21
步行者 2009-12-16