加入缓存
热点数据放在缓存里,项目上线前让热点数据在缓存里跑一遍,让数据进到缓存里,避免在大压力上来以后缓存里没有数据,从后台取数
据是很可怕的,数据库优化的成本远高于缓存,缓存的部署很简单,加入一定的规则就OK了,接下来看缓存的命中率和使用情况,它要
比动数据库来的更直接一些和更便宜,往往要动数据库时是性能优化做不了了,必须要动最底层东西从根本上优化它
负载均衡
---说白了就是通过一定的规则去把压力分摊或分流一下
---负载均衡的规则要以实际系统为准,可能是轮询,可能是按比例分配,也可能是其他
集群
以team为例,集群对于外部来说就是一个整体,他们只知道这个team叫牛逼组,但对于内部来说是由多少个人组成的(多个机器)
好处:
---避免单点故障
---方便管理,可将工作负载转移给集群中的其他服务器
---可扩展
集群测试的关注点:
---数据的一致性(增删改查)
---机器的失效切换与恢复(与负载均衡有关)
可用性测试也是性能测试的一种,负载均衡不是加的机器越多越好
CDN的全称是Content Delivery Network,即内容分发网络,CDN就近去取内容,加快用户访问速度和体验
反向代理:有两方面的作用,一是相当于一层缓存,另一方面是更安全一些
完整的请求流程:
在浏览器输入www.besttest.cn,点击回车,首先走本地缓存,如果本地缓存有直接拿出来,如果本地缓存没有不走缓存,直接往后流转,
流转到DNS服务器,DNS服务器对域名进行解析,域名对应IP服务器,域名解析定位到哪台服务器上,在向后流转,流转到应用服务
器上,又经过一层缓存,如果缓存里有直接拿出来,往前端返,如果没有继续往后流转,流转到数据库,流转到数据库后进行操作,
操作完成之后,把取出来的数据扔到缓存,同时把取出来的数据往前端返,返回到浏览器,浏览器在接到数据后进行前端页面的解析,
最终解析出来看到的页面,完成之后并把这次的数据缓存到本地,下次再访问时直接从本地取