02 2024 档案

摘要:查看慢查询日志的方式,一般如果你的项目配备了完善的监控系统,通常情况下会自动去读取磁盘中的慢查询日志,然后可直接通过监控系统的大屏来观察。但如若未具备完善的监控系统,也可以通过cat这类命令去查看本地的日志文件,慢查询日志的磁盘文件默认位于MySQL的安装目录下,也可以通过slow_query_lo 阅读全文
posted @ 2024-02-29 09:09 恨铁不成钢2 阅读(7) 评论(0) 推荐(0) 编辑
摘要:线上排查、性能优化等概念也是面试过程中的“常客”,而对于线上遇到的“疑难杂症”,需要通过理性的思维去分析问题、排查问题、定位问题、解决问题,同时,如果解决掉所遇到的问题或瓶颈后,也可以在能力范围之内尝试最优解以及适当考虑拓展性。 一、JVM线上环境时常见故障与排查思路分析 在开发过程中,如果遇到JV 阅读全文
posted @ 2024-02-28 19:40 恨铁不成钢2 阅读(272) 评论(0) 推荐(0) 编辑
摘要:type列 这一列表示关联类型或访问类型,即MySQL决定如何查找表中的行,查找数据行记录的大概范围。 依次从最优到最差分别为:system > const > eq_ref > ref > range > index > ALL 一般来说,得保证查询达到range级别,最好达到ref NULL m 阅读全文
posted @ 2024-02-28 09:39 恨铁不成钢2 阅读(5) 评论(0) 推荐(0) 编辑
摘要:Minor GC、Major GC和Full GC是垃圾回收中的三个重要概念,它们描述了垃圾回收的不同阶段和范围: Minor GC(新生代GC): Minor GC主要关注清理年轻代(Young Generation)的内存区域。 年轻代通常分为三个部分:Eden区和两个Survivor区(通常是 阅读全文
posted @ 2024-02-27 16:50 恨铁不成钢2 阅读(813) 评论(0) 推荐(0) 编辑
摘要:从代码角度考虑问题,比如是否存在 for 循环中进行 RPC调用,数据库操作等,如果有就可以通过批量查询的方式,提前把数据查出来; 善于使用 explain 执行计划分析 SQL,根据字段 type、key、extra 基本就能判断 SQL 语句是否走索引,其中 extra 字段可以为我们提供更加详 阅读全文
posted @ 2024-02-27 16:06 恨铁不成钢2 阅读(0) 评论(0) 推荐(0) 编辑
摘要:什么是接口幂等性? 所谓接口幂等性,就是一次和多次请求某一个资源对于资源本身应该具有同样的结果。 接口的 幂等性(Idempotence) 是指一个操作在执行一次和多次执行时,其结果是一样的。换句话说,无论这个操作被执行多少次,它对系统状态的影响都是相同的。幂等性是分布式系统中的一个重要概念,它有助 阅读全文
posted @ 2024-02-27 15:58 恨铁不成钢2 阅读(18) 评论(0) 推荐(0) 编辑
摘要:三个步骤: 1. 找到最耗CPU的进程 工具: top 方法: 执行 top -c ,显示进程运行信息列表 键入 P (大写 p),进程按照 CPU 使用率排序 2. 找到最耗CPU的线程 工具: top 方法: top -Hp 10765 ,显示一个进程的线程运行信息列表 键入 P (大写 p), 阅读全文
posted @ 2024-02-27 09:09 恨铁不成钢2 阅读(8) 评论(0) 推荐(0) 编辑
摘要:1、Redis需要集群主要是为了解决以下几个问题 容量限制:单机Redis的容量是有限的,一旦数据量达到单机容量极限,就需要将数据存储到多台机器上进行扩容 高可用性:单机Redis存在单点故障的问题,如果单机Redis宕机,就会导致整个系统的服务中断,因此需要使用集群来实现高可用性和容错能力 并发性 阅读全文
posted @ 2024-02-26 14:30 恨铁不成钢2 阅读(40) 评论(0) 推荐(0) 编辑
摘要:MySQL/Redis缓存一致性是指在使用MySQL作为持久化数据库和Redis作为缓存系统的应用场景中,确保当数据在MySQL中发生更改时,这些更改能够被及时、正确地反映到Redis的缓存中。保持缓存一致性是为了避免出现以下情况: 脏读:从缓存中读取到了已经过期或者已经被删除的数据。 不可重复读: 阅读全文
posted @ 2024-02-06 17:23 恨铁不成钢2 阅读(13) 评论(0) 推荐(0) 编辑
摘要:CompletableFuture详解 CompletableFuture是JDK1.8引入的实现类,该类实现了Future和CompletionStage两个接口。该类的实例作为一个异步任务,可以在自己异步执行完成之后触发一些其他的异步任务,从而达到异步回调的效果。 CompletableFutu 阅读全文
posted @ 2024-02-06 17:03 恨铁不成钢2 阅读(3) 评论(0) 推荐(0) 编辑
摘要:Redis作为一种优秀的基于key/value的缓存,有非常不错的性能和稳定性,无论是在工作中,还是面试中,都经常会出现。 今天这篇文章就跟大家一起聊聊,我在实际工作中使用Redis的10种场景 阅读全文
posted @ 2024-02-06 14:30 恨铁不成钢2 阅读(3) 评论(0) 推荐(0) 编辑
摘要:订单、指定长度随机码生成是业务系统中重要且不可避免的一个需求,往往在电商系统中,业务量、并发量庞大,如何不重复、快速、安全的生成一个订单号成了需要重点考虑的问题。这篇文章我将举一个实际的订单号生成需求,来和大家一起探究基于Redisson实现订单号的生成。 业务场景 如何避免重复下单? 由于用户误操 阅读全文
posted @ 2024-02-06 13:46 恨铁不成钢2 阅读(50) 评论(0) 推荐(0) 编辑
摘要:每年的双十一,618,电商系统都会面临这超高的流量,如果一个订单被反复提交,那电商系统如何保证这个订单之后执行一次减库存,扣款的操作? 这里就引入两个概念,幂等和防重。 幂等(Idempotence)和防重(Idempotency in data handling or Anti-replay)是两 阅读全文
posted @ 2024-02-05 14:52 恨铁不成钢2 阅读(14) 评论(0) 推荐(0) 编辑
摘要:如果代码中存在大量的if-else语句,阅读起来非常的折磨(直接劝退),维护起来也很难,也特别容易出问题。比如说以下 接下来,本文介绍我们常使用的8种方法去优化if-else。 提前return,让正常流程走主干 如果if-else代码中包含return语句,或者我们可以将包含if-else的代码从 阅读全文
posted @ 2024-02-05 13:35 恨铁不成钢2 阅读(17) 评论(0) 推荐(0) 编辑
摘要:注解 点击查看代码 import java.lang.annotation.*; @Documented @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface SkipTokenCheck 阅读全文
posted @ 2024-02-04 17:23 恨铁不成钢2 阅读(212) 评论(0) 推荐(0) 编辑
摘要:1、问题背景 开发中遇到一个问题,前端一个表单传递的参数,后端用一个bean来接收,使用@RequestBody来接收,可以将前端传递过来的字符串转换为对应的实体类。后续需求变更,前端表单中需要加另外一些新的字段,新增字段与原有字段代表含义不一致,不便写到一个Bean中,这个时候如果使用@Reque 阅读全文
posted @ 2024-02-04 17:18 恨铁不成钢2 阅读(21) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示