新闻详情

新闻详情

首页 / 资讯中心 / 详情

场景题总结-4

发布时间:2026/10/2 12:47:05来源:尧图网络
场景题总结-4
1.如何设计一个分布式的流控组件可以使用redis结合lua脚本的原子性去实现采取令牌桶算法作为限流方式redis存储桶容量、当前token数量、token生成速率和上一次更新时间每次有请求的时候就使用lua脚本判断当前token数目、然后扣减并返回结果。2.高并发系统设计首先是使用消息队列对任务进行缓存使用分库分表的方式降低压力使用rpc通信避免一个节点解决过多的问题另外还有读写分离使用多个节点主写从读使用缓存。3.怎么设计redis缓存首先是考虑redis读写策略读命中就直接返回否则先从数据库读再更新缓存写策略就直接写数据库然后使得缓存数据失效可以使用延迟双删策略。然后是淘汰策略可以使用近似的LRU算法每次淘汰的时候随机采样然后淘汰最久远的。最后是要考虑异常处理要处理缓存穿透、击穿和雪崩的问题可以使用记录零值、布隆过滤器解决缓存穿透问题缓存击穿是热点数据失效导致大量请求到达数据库可以使用互斥锁的方式去访问、热点key不失效缓存雪崩是大量key同时过期可以使用多级缓存或者对于过期时间增加随机过期时间。4.怎么排查慢sql语句首先开启慢查询日志定位慢查询的sql语句然后使用EXPLAIN查看执行计划判断是否使用了索引、扫描的行数如果没有合适的索引就建立合适的索引如果有索引要检查是否发生了索引失效的情况比如是否函数、列计算、最左前缀匹配失效、隐式的类型转换如果出现了这些情况就首先去修改sql语句利用索引。如果能使用覆盖索引避免回表就利用然后如果是select*就改成具体的列select具体的列名。在修改完成之后就使用压测然后重新查看执行计划检查。总结排查问题的思路主要是定位问题考察多个问题然后修改设计分布式系统主要是考虑使用中间件使用拆分任务的思路比如海量数据处理。分布式限流主要是因为个人项目才会问到排查慢sql、高并发系统是比较通用的问题。消息队列这些还有比如手撕一个消息队列这种拓展问题主要就是要在保证有效实现的情况下不要锁太久。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

进口波箱油怎么选?WTX福士专业服务商避坑挑选指南 2026/10/2 12:46:59

进口波箱油怎么选?WTX福士专业服务商避坑挑选指南

波箱油怎么选?WTX福士给您一份实在的挑选指南一辆车开得顺不顺,很多人第一反应是看发动机,其实真正决定换挡质感的,往往是波箱油。波箱油选错了、换晚了、用假了,轻则顿挫异响,重则波箱大修,花的是几万块的…

阅读更多 →
江苏力坤机械制造有限公司:吸附式气液分离器供应商推荐,靠谱的丝网除沫气液分离器厂家合作实力参考 2026/10/2 12:46:59

江苏力坤机械制造有限公司:吸附式气液分离器供应商推荐,靠谱的丝网除沫气液分离器厂家合作实力参考

工业介质里气与液的分离,正在成为越来越多生产环节绕不开的课题。从天然气脱水除液到压缩机进气保护,从反应器出料处理到蒸汽冷凝水回收,气液分离设备的选型与质量,直接关系到下游装置能否平稳运转。不少采购人员在寻找丝网除沫气…

阅读更多 →
华为 MetaERP 的共享模块(费用/应付/应收/核算/档案/稽核)之所以敢把全球财务流水、发票、银行、员工报销、跨境交易都收进来,靠的不是“加几个权限按钮”,而是 “自主底座 + 元数据隔离 + 2026/10/2 12:46:59

华为 MetaERP 的共享模块(费用/应付/应收/核算/档案/稽核)之所以敢把全球财务流水、发票、银行、员工报销、跨境交易都收进来,靠的不是“加几个权限按钮”,而是 “自主底座 + 元数据隔离 +

华为 MetaERP 的共享模块(费用/应付/应收/核算/档案/稽核)之所以敢把全球财务流水、发票、银行、员工报销、跨境交易都收进来,靠的不是“加几个权限按钮”,而是 “自主底座 元数据隔离 零信任访问控制 全密态数据 全链路审计 …

阅读更多 →

最新相关资讯

零基础学编程:从环境配置到调试技巧,新手避坑实战指南 2026/10/2 13:25:15

零基础学编程:从环境配置到调试技巧,新手避坑实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
如何一条命令批量下载抖音主页?douyin-downloader 免费完整上手指南 2026/10/2 13:25:15

如何一条命令批量下载抖音主页?douyin-downloader 免费完整上手指南

如何一条命令批量下载抖音主页?douyin-downloader 免费完整上手指南 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser f…

阅读更多 →
使用 RouterTestingHarness 进行 Angular 组件路由测试:以 Ghostfolio 客户端为例 2026/10/2 13:25:15

使用 RouterTestingHarness 进行 Angular 组件路由测试:以 Ghostfolio 客户端为例

后端前端金融科技数据可视化 【免费下载链接】ghostfolio Open Source Wealth Management Software. Angular NestJS Prisma Nx TypeScript 🤍 项目地址: https://gitcode.com/GitHub_Trending/gh/ghostfolio 点击查看 免费下载 导读 本文基于 Gho…

阅读更多 →
如何用WeChatMsg十分钟导出微信聊天记录:免费、完整的HTML/Word/CSV与年度报告指南 2026/10/2 13:25:15

如何用WeChatMsg十分钟导出微信聊天记录:免费、完整的HTML/Word/CSV与年度报告指南

如何用WeChatMsg十分钟导出微信聊天记录:免费、完整的HTML/Word/CSV与年度报告指南 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.c…

阅读更多 →
Git仓库初始化与项目保存全攻略:从git init到远程推送实战 2026/10/2 13:25:08

Git仓库初始化与项目保存全攻略:从git init到远程推送实战

初始化一个 Git 仓库,再把自己的项目完整地保存进去——这套操作我前前后后做过的次数早就数不清了,带过的新人也不少。说实话,很多人卡住的不是git init这一条命令,而是后面跟着的一连串连锁问题:Git 装好了不知道全局…

阅读更多 →
办公小浣熊接入 SenseNova 大模型 API 教程:TaoToken 统一 Key 的 LLM 配置方法 2026/10/2 13:25:01

办公小浣熊接入 SenseNova 大模型 API 教程:TaoToken 统一 Key 的 LLM 配置方法

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉