- 博客(8)
- 收藏
- 关注
原创 解析乐观锁与悲观锁
乐观锁:假设不会发生冲突,只有当产生冲突的时候才进行回溯,适合读多写少的情况;乐观锁控制冲突的原理是依靠一个数据版本,每次在开始使用的时候给数据一个版本号,而提交的时候再去看这个版本号是否发生变化,以确定是否产生冲突。因此,乐观锁不适用于长事务,因为长事务可能会造成提交的时候反复回滚;悲观锁:假设每次都会发生并发冲突,所以每次都上锁,适用于写多读少的情况,对于高并发场景不友好,高并发的场景下频繁地对代码加锁会影响其并发性能,可能造成拥塞;
2024-08-15 19:42:40 161
原创 JDK,JVM和JRE之间的关系
主要包括了JVM(java virtual machine和Java基础类库),为了理解JRE我们需要直到它被提出来的作用:JRE主要是为java的运行提供一个运行环境而生,因为我们知道很多语言的运行环境就是操作系统,而为了适配每个操作系统,需要开发者去不断编写各种版本的代码以适配不同的操作系统。省去了反复造轮子的时间;其实笔者之前看了不少类似的八股文,试图死记硬背,发现根本记不住,最好的记忆方法还是要落在实践上,不如打开自己的开发工具去看看平常对它们的使用,更容易加深影响和理解;
2024-08-13 02:30:32 128
原创 RocketMQ介绍
NameServer:RocketMQ的大脑,或者说是注册中心,负责管理broker,并且告诉生产者与消费者broker的路由信息,帮助它们找到broker(NameServer就是二手车贩子的老板!可以先简单的认为:Topic是消息的逻辑分类,消息保存在MessageQueue中,MessageQueue分布在Master-Broker上,Slave-Broker从Master-Broker同步数据。Broker:负责存储消息,消费者和生产者的中介;(二手车贩子,中间商,从生产者进货,再卖给消费者)
2024-08-08 16:22:49 313
原创 Get和Post的区别,以及post的请求参数
Postman支持post的四种请求类型简单理解:1:form-data:支持上传文件的表单;2.x-www-form-unlencoded:表单类型,键值对;3.raw:原生类型,可以传json、text等类型;4.binary:二进制文件(图片等);
2024-08-01 18:13:15 505
原创 Elasticsearch 冷热集群架构
热节点存储读取速度快,冷节点存储密度高,例如存储日志,可以定期把热节点中的数据信息迁移到冷节点。简单来说,热节点就是放比较热门的数据,冷节点就是放比较冷门的节点;
2024-08-01 16:52:24 482
原创 如何使用SpringCloud Gateway中的GlobalFilter组件(接口)实现网关
实现逻辑:GlobalFilter会对所有请求进行拦截和处理,写一个全局过滤器类,继承GlobalFilter的接口,然后把这个类使用@Component注解为组件;之后在这个类里,重载filter方法实现具体功能,使用exchange获取request,之后使用GatewayFilterChain chain进行过滤;
2024-07-30 01:49:54 75
原创 【自用】Spring常见注解以及用法和浅层原理梳理
SL4J:用来打日志的,是lombok中的一个注解,常见有几种日志等级:由低到高为:trace, debu, info, warn, error, fatal,默认为info等级;
2024-07-30 01:37:52 91
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人