当前位置: 首页 > news >正文

网站案例分析教育宁波中科网站建设有限公司

网站案例分析教育,宁波中科网站建设有限公司,微网站搭建平台,拓者室内设计网站有些测试朋友来问我#xff0c;redis要怎么测试#xff1f;首先我们需要知道#xff0c;redis是什么#xff1f;它能做什么#xff1f; redis是一个key-value类型的高速存储数据库。 redis常被用做#xff1a;缓存、队列、发布订阅等。 所以#xff0c;“redis要怎么测试…有些测试朋友来问我redis要怎么测试首先我们需要知道redis是什么它能做什么 redis是一个key-value类型的高速存储数据库。 redis常被用做缓存、队列、发布订阅等。 所以“redis要怎么测试”这个问题就可以转化为 缓存怎么测试 队列怎么测试 订阅怎么测试 在我所接触的技术栈中发布订阅很少用redis的我们主要说一说缓存和队列。 01、缓存的分类 缓存有几种类型文件缓存、数据库缓存、内存缓存、浏览器缓存。 浏览器缓存指的是浏览器自身的缓存能力。现代浏览器为了加快页面加载速度往往会把css、js等资源文件下载一次之后缓存一段时间直到缓存失效或者请求明确告知需要更新。 通过后端语言直接渲染、smarty等模板渲染方式输出界面的一般都会选择文件类型缓存。 如果你想学习自动化测试我这边给你推荐一套视频这个视频可以说是B站播放全网第一的自动化测试教程同时在线人数到达1000人并且还有笔记可以领取及各路大神技术交流798478386    【已更新】B站讲的最详细的Python接口自动化测试实战教程全集实战最新版_哔哩哔哩_bilibili【已更新】B站讲的最详细的Python接口自动化测试实战教程全集实战最新版共计200条视频包括1、接口自动化之为什么要做接口自动化、2、接口自动化之request全局观、3、接口自动化之接口实战等UP主更多精彩视频请关注UP账号。https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from333.337.search-card.all.click 随着大前端技术迅速发展前后端分离越来越流行smarty渲染的方式使用越来越少对后端服务的接口响应时间要求也越来越高文件缓存不再适用这种场景数据库缓存越来越流行。 数据库缓存目前最常见的redis和memcached。它们都是分布式的key-value高速缓存系统。 内存缓存跟数据库缓存也是类似的但受技术栈限制比如Java可以使用并且Java中使用非常频繁但PHP无法使用。内存缓存比数据库缓存更快但因为内存不可能一直增加所以限制更多稍不注意就会出现内存泄漏等问题。 在实际的使用过程中Java接口往往会将部分高频数据塞到内存缓存中作为一级缓存次高频数据塞到redis中作为二级缓存最后再从db查询数据。 缓存的作用 从上面的内容你可能已经知道缓存最重要的两个作用加快访问速度、减少服务器和db压力。 02、缓存的使用场景 你可能会问上面这些跟测试没啥关系啊不我认为了解上面的内容对测试还是有帮助的。你知道在技术实现上什么时候应该加缓存什么时候不应该加缓存吗这就是对一个接口的技术把控不光开发需要知道测试人员也一样。 如果一个应该添加缓存的接口没有添加缓存在压测之前被你提前发现了你不觉得自豪吗其实跟缓存的作用一一对应当接口的qps较高比如超过100或者对响应速度有要求或者服务器性能、db性能较差的都可以尝试使用缓存解决问题。 我举几个例子说明 1、微信新版本中个人中心多了一个“状态”功能。 微信的用户体量非常庞大访问qps非常高几十万人在同一秒访问不可能每次都去查询数据库。 类似这种需求一般会是这样的做法先把用户的状态数据缓存在app中浏览器缓存在某个时间段通过主动推或者被动拉的方式调用后端接口请求“状态”数据接口从redis/memcached的缓存中读取数据并返回如果数据量不那么庞大接口可以直接从内存缓存中读取数据并返回数据返回后再把用户app中的缓存更新。 2、有一个小型电商的商品管理后台列表页面访问人数不多sku改动频次很低可能3天才被访问几十次。这种场景一不需要使用缓存二在商品信息被更新之后需要立即看到更新后的数据不适合使用缓存所以不建议使用缓存。 3、同样的电商管理后台这次是一个统计页面统计昨天/今天/近一周的商品销售情况。 这个场景可以分情况来看有多种不同的解决方案。 我们抛开大数据统计的各类技术方案简单实现一个系统的统计功能 不需要实时统计 只需要定时统计一次即可比如只看昨天一天统计数据可以由定时脚本统计之后直接存储在db需要查看统计数据时直接查询db即可 需要查询实时统计数据 但需要查询的各个统计sql执行效率满足预期每次查看数据直接查询db即可此时db压力不大 需要查询实时统计数据 且因业务数据庞大各个统计sql执行效率非常低或无法直接统计可以汇总各个指标将统计值维护在缓存中比如需要销量信息每售出一件商品销量统计值缓存1查看统计数据时查询此时的缓存即可 03、缓存的生成方式 了解到缓存的使用场景之后我们来说说缓存的生成方式。 一般来说缓存有两种使用方式我简单概括为外面和里面。 先来说说一个接口的请求到了程序里是怎么处理的 这是一个典型的MVC由Controller接收和处理请求数据由Service处理Model中获取的数据再由View输出。 对不同场景我们可以采取多种方式在多个节点增加不同的缓存来解决不同的问题。 比如针对请求参数多变返回的数据如果跟请求参数强相关适合在“外面”请求参数过滤之后缓存查询到的数据。这类数据一般缓存时间短比如缓存5分钟。主要应对相同请求参数在短时间内的重复请求。如果遇到请求攻击即使这个缓存有效期只有1秒也是很有效的能挡住大量的请求。 比如针对请求参数变化不大返回的数据跟db中存储的数据很接近的情况适合在“里面”缓存数据也就是在更新db的同时更新缓存这种情况最优的状态下只需要读缓存就够了不需要跟db直接交互能大大缓解db压力。这种缓存有效期可以设置很长。 04、缓存的更新方式 说完生成再来说说缓存的更新。缓存在生成之后正常都不会一成不变所以需要对缓存进行更新。 有几种更新方式 过期后自动更新这是最懒的更新方式。通过设置缓存有效期让缓存失效后通过新的请求自动创建新的缓存。 删除缓存在更新db数据后直接删除缓存通过新的请求自动创建新的缓存。 重新设置缓存在更新db数据后直接重新设置缓存。 05、redis缓存测试点 1、性能测试角度 缓存增加/更新功能是否正确查看缓存数据是否正确 增加相关日志查看日志 后门接口工具 使用命令行memcached和reids可以登录后直接查看 缓存删除 缓存有效验证相关业务功能 缓存被删除验证相关业务功能 缓存过期失效memcached 和redis 可以设置失效时间查看失效时间有没有对不对 超量淘汰机制缓存达到上限怎么处理 缓存穿透 缓存雪崩 redis缓存服务停掉 缓存超时 缓存数据被误修改后快速恢复到指定版本 缓存数据被误删除后快速恢复数据 2、Redis功能测试角度 redis数据生效时读取是否正确 redis数据不存在能否正常从db中读取到正确的值并正确写入Redis和返回给上层 数据在redis和db中都不存在时的表现是否正常 删除数据时redis和db的数据是否一致
http://www.dnsts.com.cn/news/131440.html

相关文章:

  • 自己怎么做网站链接设计开发流程
  • 苏州网站建设名字做网站的业务员
  • 网站设计网wordpress默认图像不显示
  • 商务网站建设pdf企业网站哪家好
  • 湖州 外贸网站建设php网站开发实用技术
  • Dell网站建设建议谷歌没收录网站主页 301重定向
  • 长春美容网站建设十大传媒公司
  • 家用电器行业外贸建站秀山网站建
  • 银川微信网站制作注册公司的流程图
  • 网站主页制作中山网站建设价格
  • 做视频网站违法吗建设营销型网站流程图
  • 网站点击图片放大电商开店流程及费用
  • h5网站建设 北京wordpress 上传pdf
  • 自己做个网站怎么做无锡公司网站建设服务
  • 专业网站设计公司有哪些用node做的网站
  • html5 微网站开发计算机培训班要学多久
  • 怎么样做好网站建设做网站主色调选择
  • 分享设计作品网站WordPress安装jetpack
  • 建设嘉陵摩托车官方网站深圳网站建设的
  • 松原权威发布wordpress图片优化加速
  • 做化妆品的网站有哪些godaddy wordpress 优惠码
  • 秦皇岛哪里做网站定制网站建设费用预算
  • 全屏企业网站欣赏网站设计与建设
  • 基础的网站建设温州seo全网营销
  • 西双版纳网站建设简体转繁体wordpress插件
  • 婴儿辅食中企动力提供网站建设学校网页网站模板免费下载
  • 找公司做网站怎么图片都要自己找淘宝每平每屋设计家官网
  • 网站建设技能考试试题三培训机构不退费最有效方式
  • 邮箱注册网站申请网站程序结构
  • wordpress全站静态化wordpress 机械