- 博客(10)
- 收藏
- 关注
原创 Java 并发中 CAS 的理解
总结:CAS 是一种基于硬件支持的高并发安全操作,它保证了对共享变量的操作是原子性的,从而实现了线程安全,能够避免传统锁机制所带来的性能开销和线程间的竞争,提高了系统的并发处理能力CAS(Compare and Swap)的作用是实现乐观并发控制,它用于解决共享资源的并发访问问题,以保证对共享资源的操作是线程安全的。它避免了使用锁机制(悲观并发控制)带来的开销和竞争,提高了并发性能CAS 是一种基于硬件指令的原子操作,通常由处理器提供支持。
2023-06-26 13:28:01
184
1
原创 Dubbo 调用过程源码分析(更新中)
每个流程都是有对应的线程来完成,当出现业务调用时会将对应的远程请求委托给请求线程完成,委托完成后,业务会进入等待唤醒的状态当远程服务处理完成返回结果时,是由另外的线程来完成的,它会先进行解码(解析响应数据转为对应的返回类型),并委托给响应线程处理响应线会发送信号唤醒等待的业务线程Mock判断当前调用是否被销毁, 销毁的情况下直接抛出异常。
2023-03-21 17:26:01
181
原创 Spring 动态注入代理(AOP)
注意 AOP 组件需要比被代理的Bean先注入到容器中,否则不生效。我使用的是 BeanDefinitionRegistryPostProcessor 方式实现,在 Bean 未生成前将AOP组件注入到容器中。如果还有其它的方式请告知,谢谢啦。package customercenter.config;import lombok.AllArgsConstructor;import lombok.Data;import lombok.NoArgsConstructor;import org.aop
2021-06-16 11:47:04
488
原创 使用 Spring\SpringBoot 中的组件进行代理(Aop)
package com.jay.prj.mybaits;import org.aopalliance.intercept.MethodInterceptor;import org.aopalliance.intercept.MethodInvocation;import org.springframework.aop.support.DefaultBeanFactoryPointcutAdvisor;import org.springframework.aop.support.StaticMeth
2021-06-11 11:57:09
222
1
原创 SpringMVC或MyBatis 无法对对象中的 is 开头字段进行映射
请留意字段与 get 与 set 方法名称是否一致。无法映射类 public Class A1{ private boolean isUse; /*自动生成 setget 方法*/ public boolean getUse(){} public boolean setUse(){} }修改 get set 方法可以进行映射 public Class A1{ privat...
2020-04-17 17:27:57
4855
原创 Reids简单命令
Redis 是一款内存高速缓存数据库,它的数据模型为 key-value,使用缓存减轻数据库的负载。它支持的数据结构有 String list hash set sored set。Redis 可以做持久化操作,保证数据安全。缓存有两种类型: 数据缓存 经常用在页面的数据中,页面缓存 经常用在 CMS 内存管理系统。Key 操作 FLUSHALL 删除所有数据库的所有k...
2018-08-24 00:33:44
197
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人