项目优化笔记
文章平均质量分 52
风和鱼
这个作者很懒,什么都没留下…
展开
-
开发笔记-幂等性
总结:处理方式其实是尽量避免重复请求,还有如何判断重复请求,并对重复请求过滤。针对角色来说:每次操作,分为后端执行的结果(操作副作用,对数据资源的修改)和前端调用后的结果。唯一索引:数据库中如订单id作为唯一索引,根据唯一索引查询,如果存在数据说明已保存成功,后面重复请求直接返回查询结果就行;2.1 分布式服务中,上游调用下游接口失败后上游多次重试,MQ消费时配置了重试(是否需要重复消息根据业务定)等;1.1 相同的参数,就是多次请求参数是一致的,这个是前提条件;前端处理:避免重复操作,操作一次按钮置灰;原创 2024-08-29 14:58:34 · 180 阅读 · 0 评论 -
性能优化笔记二(本地缓存)
Window TinyLFU是一种高效的缓存设计方案,它结合了LFU(Least Frequently Used)和LRU(Least Recently Used)算法的优点,旨在提供高命令率和低内存占用。在对被缓存的元素的时效性存在要求的场景下,这是理想的选择。缓存:缓存是指用于通过将经常访问的数据临时存储某个位置,用来提高应用程序的性能和效率,是一种空间换时间的手段。注:缓存分类:可以分为内存缓存,硬盘缓存,分布式缓存,项目中常说的本地缓存是内存缓存。就是数据变动频率比较低,更多是读取操作;原创 2024-08-27 14:19:00 · 750 阅读 · 0 评论 -
业务代码优化笔记一
需要根据实际情况评估工作量来选择优化方式,当接口是查数据库时优先优化slq。不能上来就加缓存,或者并发调用;因为会增加工作量和代码复杂度等;尽量是使用最简单的代码实现业务。1.1 占用内存大小;如查询时没有带条件一次查询过多的数据,导致服务器内存占用过多的问题,需要分批操作;平时自己测试时发现响应时间过长的问题;去掉无用的字段:加索引等;如客户端一次调用大量无用接口改为只调用当前页面接口;根据平常所做业务,比较严重和明显的问题来说看;1 根据业务优化sql;如全量展示改为分页展示;2 优化业务代码逻辑;原创 2024-08-22 14:13:00 · 228 阅读 · 0 评论