技术分享

金山云 > 云计算 > 服务器架构与高并发性能测试实战方案(二)

服务器架构与高并发性能测试实战方案(二)

发布时间: 2020-01-17 18:01:01


1)通用方案


日用户流量大,但是比较分散,偶尔会有用户高聚的情况;


场景: 用户签到,用户中心,用户订单等。


说明:


场景中的这些业务基本是用户进入APP后会操作到的,除了活动日(618、双11等),这些业务的用户量都不会高聚集,同时这些业务相关的表都是大数据表,业务多是查询操作,所以我们需要减少用户直接命中DB的查询;优先查询缓存,如果缓存不存在,再进行DB查询,将查询结果缓存起来。


更新用户相关缓存需要分布式存储,比如使用用户ID进行hash分组,把用户分布到不同的缓存中,这样一个缓存集合的总量不会很大,不会影响查询效率。


方案如:


用户签到获取积分:


计算出用户分布的key,Redis,hash中查找用户今日签到信息


如果查询到签到信息,返回签到信息


如果没有查询到,DB查询今日是否签到过,如果有签到过,就把签到信息同步Redis缓存。


如果DB中也没有查询到今日的签到记录,就进行签到逻辑,操作DB添加今日签到记录,添加签到积分(这整个DB操作是一个事务)


缓存签到信息到Redis,返回签到信息


注意这里会有并发情况下的逻辑问题,如:一天签到多次,发放多次积分给用户。


用户订单:


这里我们只缓存用户第一页的订单信息,一页40条数据,用户一般也只会看第一页的订单数据


用户访问订单列表,如果是第一页读缓存,如果不是读DB


计算出用户分布的key,Redis,hash中查找用户订单信息


如果查询到用户订单信息,返回订单信息


如果不存在就进行DB查询第一页的订单数据,然后缓存redis,返回订单信息


用户中心:


计算出用户分布的key,Redis hash中查找用户订单信息


如果查询到用户信息,返回用户信息


如果不存在进行用户DB查询,然后缓存redis,返回用户信息


以上就是金山云为您带来的服务器架构与高并发性能测试实战方案(二)的相关内容,如果您还想了解更多服务器架构与高并发性能测试实战方案(二)的相关问题您可以点击页面中的链接进行具体了解。金山云提供云服务器,云主机,云存储,私有云,数据库,物理主机,RDS,KS3,SLB,KEC的全套产品服务,部分产品可以免费体验,而且会有定期的优惠、代金券等相关的活动。成立7年来,金山云始终坚持以客户为中心的服务理念,提供安全、可靠、稳定、高品质的云计算服务。以上是对服务器架构与高并发性能测试实战方案(二)相关介绍,如果觉得对您有帮助可以收藏。欢迎随时查看。

以上就是金山云为您带来的云计算的全部内容,如果还想了解更多内容可访问金山云官网www.ksyun.com了解其它资讯。
*免责声明:部分文章信息来源于网络以及网友投稿,本网站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如本站文章和转稿涉及版权等问题,请作者在及时联系本站,我们会尽快处理。