- 博客(34)
- 收藏
- 关注
原创 高并发下如何防重复?
最近测试给我提了一个bug,说我之前提供的一个批量复制商品的接口,产生了重复的商品数据。追查原因之后发现,这个事情没想象中简单,可以说一波多折。
2024-07-15 13:22:39 527
原创 明明加了唯一索引,为什么还是产生重复数据?
相同的记录第二次删除的时候,delete_status被设置成1,但由于创建了唯一索引(把name、model和delete_status三个字段同时做成唯一索引),数据库中已存在delete_status为1的记录,所以这次会操作失败。该方案的思路跟增加时间戳字段一致,即在添加数据时给delete_id设置默认值1,然后在逻辑删除时,给delete_id赋值成当前记录的主键id。如果新增数据的入口比较少,比如只有job,或者数据导入,可以单线程顺序执行,这样就能保证表中的数据不重复。
2024-07-15 13:20:20 884
原创 高并发下如何保证接口的幂等性?
接口幂等性问题,对于开发人员来说,是一个跟语言无关的公共问题。本文分享了一些解决这类问题非常实用的办法,绝大部分内容我在项目中实践过的,给有需要的小伙伴一个参考。不知道你有没有遇到过这些场景:有时我们在填写某些form表单时,保存按钮不小心快速点了两次,表中竟然产生了两条重复的数据,只是id不一样。我们在项目中为了解决接口超时问题,通常会引入了重试机制。第一次请求接口超时了,请求方没能及时获取返回结果(此时有可能已经成功了),为了避免返回错误的结果(这种情况不可能直接返回失败吧?
2024-07-10 16:05:13 772
原创 SQL优化
本章重点,对于一个假设的WHERE语句示例索引使用情况备注使用到a只使用索引的第一个列a使用到a,b使用索引的前两列a和b使用到a, b, c完全使用索引的所有列a、b、c或或不使用索引没有使用索引的第一个列a,索引不被使用使用到ab列缺失,但可以使用索引的a和c列使用到a和b使用索引的a和b列,c列因为范围查询不能使用使用到a, b, c使用索引的a列和b列的模式匹配,以及c列只用到a通配符在开头,b列的索引不能使用,c列同样只用到a通配符在两边,b列的索引不能使用,c列同样。
2024-07-10 16:04:17 510
原创 延时任务实现方式汇总(11种)
延迟任务在我们日常生活中比较常见,比如订单支付超时取消订单功能,又比如自动确定收货的功能等等。所以就来从实现到原理来盘点延迟任务的11种实现方式,这些方式并没有绝对的好坏之分,只是适用场景的不大相同。
2024-07-10 16:03:00 754
原创 windows查看端口占用并关闭
请注意,执行关闭进程的命令可能会中断正在运行的进程,因此请谨慎使用。推荐在关闭进程之前,先确保没有其他重要任务正在该进程中运行。上述命令会列出当前系统中所有的网络连接和监听端口,以及它们对应的进程标识 (PID)。这将显示包含 PID 1234 的进程的详细信息,包括进程的名称、内存使用情况等。上述命令将强制结束进程,包括所有关联的线程。
2024-06-12 15:52:06 233
原创 你知道什么情况下 HTTPS 不安全么?
尽管HTTPS协议相对于HTTP协议更加安全,但仍然存在一些情况下,HTTPS不安全。本文深入探讨了这些情况,包括中间人攻击、SSL/TLS协议漏洞、HTTPS代理、证书错误和在不安全的网络中使用HTTPS。建议在使用HTTPS协议时注意以上相关的安全问题,并采取适当的措施来保护您的数据安全。
2023-07-18 14:23:32 834
原创 ubuntu系统的网络配置:桥接模式
通过手动配置IP实现Ubuntu桥接模式,可以用于虚机和寄宿机网络互通。当寄宿机可以上网,虚拟机也可以上外网
2023-06-13 11:31:04 729
原创 VM虚拟机安装vm tools时tar不能解压安装包解决方法
虚拟机安装了ubuntu时候需要共享文件夹,很方便,可以在虚拟机和客户端pc上交互,但是共享文件夹一直显示禁用,这是虚拟机没有安装vm tools的原因,选择虚拟机,点击安装tools下载后进入media/lee/VMware Tools文件夹解压。但是会解压失败,一般的原因是因为vmtools的安装包,默认是挂载在光盘中,需要先拷贝出来,再解压,才会成功。
2023-06-13 11:11:02 1028
原创 DataBase数据库笔记
day01数据库学习数据库主要学习的是如何对数据进行增删改查操作.SQLStructured Query Language: 结构化查询语言, 通过此语言让程序员和数据库软件进行交流刘德华 30 5000insert into emp values("刘德华",30,5000);DBMSDataBaseManagementSystem: 数据库管理系统(数据库软件)常见的几种DBMS: MySQL: Oracle公司产品, 08年被Sun公司收购, 09年Su..
2022-05-09 20:07:40 683
原创 Spring Cloud Alibaba 微服务设计;Docker虚拟化技术应用实践;Redis分布式缓存技术应用
第一部分:资料说明博客地址:myAddress天翼云盘:myAddress百度网盘:myAddress第二部分: 微服务架构最佳实践目标:1)了解微服务诞生的背景(大系统,分而治之,将复杂问题简单化)2)了解SpringCloud微服务规范( 服务治理?怎么分? 怎么治?)3)掌握Spring Cloud Alibaba 解决方案中的核心组件的基础应用(nacos,sentinel,…)4)掌握Spring Cloud Alibaba 解决方案下单点登陆系统的设计以及解决方案?(两套方案
2022-05-09 20:00:30 113
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人