摘要: 1、什么是幂等 在我们编程中常见幂等 select查询天然幂等 delete删除也是幂等,删除同一个多次效果一样 update直接更新某个值的,幂等 update更新累加操作的,非幂等 insert非幂等操作,每次新增一条 2、产生原因 由于重复点击或者网络重发: 点击提交按钮两次; 点击刷新按钮; 阅读全文
posted @ 2021-08-30 09:00 bucaichenmou 阅读(532) 评论(1) 推荐(2) 编辑
摘要: 前言 在实际工作中总是需要在项目启动时做一些初始化的操作,比如初始化线程池、提前加载好加密证书....... 那么经典问题来了,这也是面试官经常会问到的一个问题:有哪些手段在Spring Boot 项目启动的时候做一些事情? 方法有很多种,下面介绍几种常见的方法。 1、监听容器刷新完成扩展点Appl 阅读全文
posted @ 2021-08-23 08:48 bucaichenmou 阅读(893) 评论(0) 推荐(3) 编辑
摘要: 1、为什么有消息系统 1、解耦合 2、异步处理 例如电商平台,秒杀活动。 一般流程会分为: 风险控制 库存锁定 生成订单 短信通知 更新数据 通过消息系统将秒杀活动业务拆分开,将不急需处理的业务放在后面慢慢处理; 流程改为: 风险控制 库存锁定 消息系统 生成订单 短信通知 更新数据 3、流量的控制 阅读全文
posted @ 2021-08-13 09:46 bucaichenmou 阅读(1472) 评论(0) 推荐(5) 编辑
摘要: 1. 前言 我们先思考下面几个业务场景的解决方案: 支付系统每天凌晨1点跑批,进行一天清算,每月1号进行上个月清算 电商整点抢购,商品价格8点整开始优惠 12306购票系统,超过30分钟没有成功支付订单的,进行回收处理 商品成功发货后,需要向客户发送短信提醒 类似的业务场景非常多,我们怎么解决? 很 阅读全文
posted @ 2021-08-12 11:41 bucaichenmou 阅读(433) 评论(0) 推荐(0) 编辑
摘要: 1、缓存 String类型 例如:热点数据缓存(例如报表、明星出轨),对象缓存、全页缓存、可以提升热点数据的访问数据。 文章首发于:http://ht5n8.cn/LEc6v 2、数据共享分布式 String 类型,因为 Redis 是分布式的独立服务,可以在多个应用之间共享 例如:分布式Sessi 阅读全文
posted @ 2021-08-09 09:11 bucaichenmou 阅读(2145) 评论(0) 推荐(14) 编辑
摘要: 前言 对于微服务而言配置本地化是个很大的鸡肋,不可能每次需要改个配置都要重新把服务重新启动一遍,因此最终的解决方案都是将配置外部化,托管在一个平台上达到不用重启服务即可一次修改多处生效的目的。 但是对于单体应用的Spring Boot项目而言,动态刷新显然是有点多余,反正就一个服务,改下重启不就行了 阅读全文
posted @ 2021-07-23 10:33 bucaichenmou 阅读(451) 评论(0) 推荐(1) 编辑
摘要: 在排查线上异常的过程中,查询日志总是必不可缺的一部分。现今大多采用的微服务架构,日志被分散在不同的机器上,使得日志的查询变得异常困难。 工欲善其事,必先利其器。如果此时有一个统一的实时日志分析平台,那可谓是雪中送碳,必定能够提高我们排查线上问题的效率。本文带您了解一下开源的实时日志分析平台 ELK 阅读全文
posted @ 2021-07-15 09:45 bucaichenmou 阅读(351) 评论(0) 推荐(0) 编辑