自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 收藏
  • 关注

原创 redisson的trylock参数

/lock方法会无限重试。第一个参数(等待时间),如果设置了,获取锁失败后,就不会立即返回了;//这种写法调用代理对象的方法,方法是有事务处理的。//设置失效时间,看门狗失效。//看门机制不能设置失效时间 采用默认的失效时间30秒 (那重试时间怎么设置呢?//分布式方式,分布式锁,采用redisson锁。

2025-04-15 22:45:05 308

原创 锁跟事务的注意点

声明式事务这个东西很鸡肋的,写完代码,最好测一下多人并发和单人并发。最好抽取方法,再加事务,然后再调代理类。

2025-04-15 21:33:14 83

原创 redisson的unlock方法

getLock底层是hash,大key是userid,小key是线程,value是重入次数。//这种写法调用代理对象的方法,方法是有事务处理的。//设置失效时间,看门狗失效。//看门机制不能设置失效时间 采用默认的失效时间30秒 (那重试时间怎么设置呢?//分布式方式,分布式锁,采用redisson锁。

2025-04-13 19:50:04 205

原创 关于乐观锁的核心

读的时候带上版本号,改的时候对比版本号。

2025-04-12 15:59:28 72

原创 DelayQueue

package com.liu.delay;import java.util.concurrent.Delayed;import java.util.concurrent.TimeUnit;public class Mydelay<T> implements Delayed { private T data; private long stopTime;//过期时间 public Mydelay(long delay,T t) { this.

2025-04-11 14:19:02 314

原创 接口优化方式

如果是串行(按顺序依次执行每个任务)执行的话,接口的响应速度会非常慢。考虑到这些任务之间有大部分都是无前后顺序关联 的,可以并行执行 ,就比如说调用获取商品详情的时候,可以同时调用获取物流信息。通过并行执行多个任务的方式,接口的响应速度会得到大幅优化。实际项目中,一个接口可能需要同时获取多种不同的数据,然后再汇总返回,这种场景还是挺常见的。举个例子:用户请求获取订单信息,可能需要同时获取用户信息、商品详情、物流信息、商品推荐等数据。可以帮助我们来做多个任务的编排,功能非常强大。

2025-04-10 10:36:23 283

原创 关于hashset去重和equals和hashcode方法的关系

如果你只重写equals方法,不重写hashcode,代码就会先计算hashcode,直接判定是两个对象。先计算hashcode,这个地址有多个对象就会再次使用equals判断是不是同一个对象。hashset会判断这两个对象是不是同一个,如果是同一个就会去重。如果不重写equals和hashcode方法就会比较对象地址。

2025-04-09 15:17:27 75

原创 关于后端校验的重要性

比如领取优惠券,你昨天打开的页面,今天优惠券已经失效了,但是你并没有刷新页面,所有你还是可以点击立即领取的。如果你不后端校验,优惠券就会超发。

2025-04-06 10:52:22 112

原创 springboot的线程池和jdk里的线程池

springboot的线程池:jdk里的线程池:

2025-04-05 12:15:37 63

原创 关于权限,ai给的建议

Around("@annotation(com.example.auth.annotation.HasPermission)") public Object around(ProceedingJoinPoint point) throws Throwable { // 提取方法上的注解和权限标识 Signature signature = point.getSignature();- **原理**:将用户的权限信息缓存到内存中(如 Redis、Memcached 等),减少对数据库的直接访问。

2025-04-02 10:41:53 908

原创 aop名词

@Servicepublic class UserService { //连接点(此方法的调用或者异常的抛出都是连接点),目标方法 public void registerUser(User user) { }} //切面(切点+通知)@Aspect@Componentpublic class LoggingAspect { // 切入点(Pointcut) @Pointcut("execution(* com.example.UserService.*(.

2025-03-31 14:12:56 106

原创 关于为什么使用redis锁,不使用zk锁的原因

总结,redis实现的分布式锁虽然是ap模型,理论上锁竞争比较耗性能,但理论就是理论,实际上绝大多数分布式锁只用于避免一些极端情况。而zookeeper实现分布式锁的最大的问题在于国内项目使用zookeeper的概率并不高,引入zookeeper只为了分布式锁太浪费,还增加系统复杂度。至于ap模型的问题,绝大多数分布式锁只是用于避免一些极端情况的,若单一数据会有那么高的并发量你还加锁,那就要考虑这个业务场景设置的合理不合理了。

2025-03-30 22:45:59 277

原创 关于隔离级别,新手容易出现的疑问

场景:a读取订单信息,b修改了商品价格,如果是读已提交,就会读到最新价格,与订单信息发生冲突。那只能使用可重复读隔离级别了。疑问:为什么大多数文章不谈及删除数据,因为删除属于修改数据的范畴。你可以简单理解为删除就是修改。1.读已提交可以读到别人已经提交的修改的数据。可重复读可能会读到别人已提交的新增的数据。2.为啥会有可重复读这种隔离级别?读已提交每次读到最新的提交数据,不好吗?答:确实在有些场景下不好,可重复读要求事物的一致性,而不是实时性。重点:一致性,整体数据是要符合逻辑的。

2025-03-25 12:34:02 104

原创 echarts多柱状图和多折线图结合

legend: {},dataset: {source: [},yAxis: {},series: [

2025-03-15 10:52:06 310

原创 分布式任务调度

xxl-job

2025-03-09 21:05:22 93

原创 关于elementui的校验

addSubmit('add')">确 定</el-button><el-button type="primary" @click="addSubmit('add')">确 定</el-button>一般在添加数据的时候会用到校验,也伴随关闭窗口方法的调用。第一种:伴随关闭窗口设置值(失败)第二种:只有校验(成功)

2025-03-06 15:58:25 81

原创 关于elementui的时间组件与后端时间和oracle数据库时间的对应格式

placeholder="选择日期">

2025-03-04 16:36:18 226

原创 关于redis同步的简单理解

但是像视频播放需要频繁提交记录,就需要合并写操作,这个时候往往会在缓存中去修改或者删除,然后用异步延迟任务去修改数据库。其实像一般的情况,直接从数据库层面去删除和修改,然后清空缓存。以上两种情况是有区别滴!

2025-02-26 09:56:32 88

原创 redis简单理解

一对多就考虑list,set,zset,map。如果存储数据是一对一的,就用string类型。

2025-02-25 15:15:53 85

原创 两种对象转json的方式

对象转json

2025-02-05 21:05:15 192

原创 idea中git的简单使用

git

2025-02-04 20:53:11 247

原创 kafka

消息到分区是负载均衡。消息到消费者组时消费者都会收到消息,是并行消费。

2025-01-21 10:31:04 110

原创 kafka和rabbitmq的相同之处

当生产者(Producer)发送消息到Kafka时,它会指定一个topic,并可以选择性地指定一个分区。如果生产者没有指定分区,Kafka会根据一定的策略(如轮询、键的哈希值等)来决定消息应该被发送到哪个分区。这个策略是可以在Kafka的配置中进行设置的。会把消息发送到交换机,如果不设置topic,交换机就会把消息发送到所有的队列。

2025-01-20 11:07:19 87

原创 mongdb结构与mysql对比

结果:集合类似mysql中的表,文档类似mysql中的行。执行下面两条语句,给集合c1添加多条数据。

2025-01-17 12:43:32 195

原创 redis性能

一秒十万次请求??太猛了。

2025-01-15 17:14:44 98

原创 map场景

2025-01-15 08:52:10 226

原创 关于分布式锁的简单理解(初学者)

如果电商平台采用分布式架构,那么扣库存的业务逻辑可能会部署在多个服务器上。如果多个用户同时下单购买同一个商品,那么这些请求可能会被分发到不同的服务器上,导致多个服务器同时尝试执行扣库存操作。在分布式系统中,由于业务逻辑可能部署在多个服务器上(这些服务器可能位于不同的物理位置,通过网络相互连接),因此相同的业务操作(如扣库存)可能会在不同的服务器上同时发生。因此,在分布式系统中,不同的服务器确实可能会存在相同的扣库存业务,而分布式锁则是用来解决这种分布式环境下的资源同步问题的关键机制。

2025-01-13 10:50:50 198

原创 【无标题】

第一阶段提交后用户查询数据,如果第二阶段回滚,用户查询道德数据就有问题。

2025-01-08 20:15:01 103

原创 Arthars简单使用

3.Arthas 显示总共花了 4 秒,但实际上在链路上看大概是 350~450ms 左右。其他多出来的时间是 Arthas 每一次执行统计的消耗,因为方法里的循环比较多。这也告诉我们,不要用 trace 去看循环很多。1.监控方法执行情况,每5秒执行一次,monitor 类路径 方法名,成功,失败,执行平均时间,失败率,2.监控这个方法内的所有方法执行情况,主要是看执行时间。会对性能有非常严重的影响。

2025-01-08 16:13:16 175

原创 rabbitmq的yaml配置

生产者和消费者的配置除了端口都一样。端口不是15672,是5672。

2025-01-07 14:22:08 97

原创 rabbitmq的三个交换机及简单使用

/这个map就是发送的消息。//将消息携带绑定键值:TestDirectRouting发送到交换机TestDirectExchange。@RabbitListener(queues="TestDirectQueue")//监听的队列。提前说一下,创建队列,交换机,绑定交换机和队列都是在生产者。

2025-01-07 14:19:40 903

原创 服务故障的原因

高并发,网络问题,fullgc引起的假死问题。

2025-01-04 14:53:39 80

原创 gateway的路径匹配介绍

看我注解你就明白了。其实就是/order/**配置机制直接匹配到orderservice服务。gateway是一个单独服务,不写代码,重点写路径配置。2我试着请求一个路径,请求成功。下面第三步是请求的接口。

2025-01-04 11:41:52 364

原创 feign的抽取

1创建模块,引依赖.消费者添加@EnableFeignClients注解。2消费者引入feign模块。3引入feign中的接口。

2025-01-03 21:33:15 184

原创 feign的简单应用(未将feign抽取成模块)

2消费者的启动类,@EnableFeignClients注解。3消费者,编写feign的客户端.

2025-01-03 21:02:05 148

原创 vue2中路由routerlink结合elementui使用

提前说下,elementui中不用使用routerlink标签,按我下面的设置即可。

2024-12-30 22:13:24 128

原创 vue2中路由的基本使用

app.vue中的配置:routerlink是切换的标签,router是替换的页面。src下创建router文件,里面创建index.js文件。自己先搞两个组件:AboutPage.vue和HomePage.vue。3在引入路由,并配置路径与组件的对应。页面效果:点击about。

2024-12-29 14:09:25 231

原创 关于密码的加密解密算法

不建议使用base64进行加密密码,因为该加密方法可逆。可以用浏览器中的工具试一下哦。第一种:base64。

2024-12-27 15:16:03 232

原创 关于vue中服务器代理的文章

vue的axios请求说明:下面axios中8080是前端本身端口,也就是启动端口,也是代理服务器端口。这个请求其实发给代理服务器了。下面的atguigu只是标识,通过配置在代理中会删除。跨域:请求会成功发送,但是请求返回时前端发现返回的请求跨域,就不接受数据。搞清楚,请求可以到达后端,只是前端没要数据。pathRewrite:用于删除标识,这样请求就正确了。注意:以atguigu开始的请求的意思是在端口后面紧跟着的便是开头。vue可以直接发送axios请求啊,为什么要将请求进行代理呢?

2024-12-27 14:42:16 294

原创 若依端口配置

第一个红框不知道需不需要,反正我写了。第二个红框就是前端打包地址。2目标地址,后端ip端口。

2024-12-25 14:58:04 354

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除