威@猫的博客
40个优化小技巧 40个优化小技巧
40个优化小技巧在 Java 程序中,性能问题的大部分原因并不在于 Java 语言,而是程序本身。养成良好的编码习惯非常重要,能够显著地提升程序性能。 1. 尽量在合适的场合使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率
2025-12-02
6种统计线上接口耗时的方案 6种统计线上接口耗时的方案
6种统计线上接口耗时的方案我想和大家聊聊一个看似简单、却在实际项目中经常被忽略的话题:统计接口耗时。 有些小伙伴在工作中,可能经常遇到这样的场景:线上接口突然变慢,用户抱怨连连,你却一头雾水,不知道问题出在哪里。 或者,在性能优化时,你费尽
2025-12-02
6种常见的负载均衡算法 6种常见的负载均衡算法
6种常见的负载均衡算法负载均衡是指将来自客户端的请求分配到多个服务器上进行处理,从而有效地提高系统性能、可用性和可扩展性。 常见的负载均衡算法包括轮询、加权轮询、随机、加权随机、源IP哈希和最少连接等。下面将逐一介绍它们。 轮询算法(Rou
2025-03-22
接口幂等性解决方案 接口幂等性解决方案
接口幂等性解决方案前言接口幂等性问题,对于开发人员来说,是一个跟语言无关的公共问题。本文分享了一些解决这类问题非常实用的办法,绝大部分内容我在项目中实践过的,给有需要的小伙伴一个参考。 不知道你有没有遇到过这些场景: 有时我们在填写某些f
2025-03-06
通过Lambda方法引用获取字段信息 通过Lambda方法引用获取字段信息
通过Lambda方法引用获取字段信息最近项目中使用了MybatisPlus,在使用过程中看到MybatisPlus中的LambdaQueryWrapper可以通过Lambda表达式中的方法引用获取到字段名称: //通过列名添加查询列 Que
2024-08-22
MySQL数据同步ES的4种方法 MySQL数据同步ES的4种方法
MySQL数据同步ES的4种方法大家应该都在各种电商网站检索过商品,检索商品一般都是通过什么实现呢?搜索引擎Elasticsearch。 那么问题来了,商品上架,数据一般写入到MySQL的数据库中,那么用于检索的数据又是怎么同步到Elast
2024-07-08
一致性hash 一致性hash
一致性hash 构建场景假如我们有三台缓存服务器编号node0、node1、node2,现在有3000万个key,希望可以将这些个key均匀的缓存到三台机器上,你会想到什么方案呢? 我们可能首先想到的方案,是取模算法hash(key)%
2024-07-08
秒杀功能实现 秒杀功能实现
秒杀功能实现在电商项目中我们经常会看到商品秒杀功能;就是商家给出一定数量的商品,用户对这些商品进行抢购。看似简单的秒杀功能那么是如何实现的呐? 我们这就来解开秒杀功能实现的逻辑及代码演示。 1.秒杀功能实现1.1 建表:用户表: CREAT
2024-06-28
盲盒抽奖功能实现 盲盒抽奖功能实现
盲盒抽奖功能实现盲盒、抽奖类的功能的要点是如何计算商品获得的概率区间; 例如现在我们有5件商品:[“铅笔”,”笔记本”,”书包”,”耳机”,”手机”],它们的获得概率是[0.6, 0.2, 0.1, 0.08, 0.02];它们的概率总和是
2024-06-24