自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 spring源码解析

架构Spring FrameworkSpring 核心容器 Core Container Spring Core Spring Bean Spring Context SpEL (Spring Expression Language) 数据访问 Data Access JDBC ORM OXM Transaction Web WebMVC WebFlux WebSocket AOP

2021-04-08 16:58:12 214

原创 乐观锁的原理CAS

CAS( Compare-And-Swap)“比较并交换”(乐观锁的原理)CAS 的特点是避免使用互斥锁,当多个线程同时使用 CAS 更新同一个变量时,只有其中一个线程能够操作成功,而其他线程都会更新失败。更新失败的线程并不会被阻塞,而是被告知这次由于竞争而导致的操作失败,但还可以再次尝试。CAS 的思路CAS 相关的指令是具备原子性的CAS 有三个操作数:内存值 V、预期值 A、要修改的值 B。核心思路:仅当预期值 A 和当前的内存值 V 相同时,才将内存值修改为 B。下面我们用图解和例子的

2020-07-14 15:00:31 331

原创 JAVA的内存模型

JAVA内存模型JVM 内存结构和 Java 虚拟机的运行时区域有关;Java 内存模型和 Java 的并发编程有关。JVM内存模型6个区域堆区(Heap):堆是存储类实例和数组的,通常是内存中最大的一块。实例很好理解,比如 new Object() 就会生成一个实例;而数组也是保存在堆上面的,因为在 Java 中,数组也是对象。虚拟机栈(Java Virtual Machine Stacks):它保存局部变量和部分结果,并在方法调用和返回中起作用。方法区(Method Area):它存储

2020-07-13 19:31:33 429

原创 阻塞队列-BlockingQueue

阻塞队列public interface BlockingQueue extends Queue{…}[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3QtabpFM-1594633540746)(C:\Users\zhangzhicheng\AppData\Roaming\Typora\typora-user-images\image-20200713171249304.png)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Vi7rTE

2020-07-13 17:46:24 214

原创 Quartz简单入门

Quartz简单入门1、依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-quartz</artifactId></dependency>2、使用package org.sang.quartz;import org.springframework.stereotype.Co

2020-07-01 18:03:19 102

原创 SpringBoot集成Redis

SpringBoot集成Redis1、依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> <exclusions> <exclusion> <groupId>io.lettuce<

2020-07-01 17:54:51 76

原创 Docker简单入门

Docker1、简介Docker是一个开源的应用容器引擎;是一个轻量级容器技术;Docker支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像;运行中的这个镜像称为容器,容器启动是非常快速的。docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上);docker客户端(Client):连接docker主机进行操作;docker仓库(Registry):用来保存各种打包好的软件镜像;docker镜像(

2020-07-01 17:30:50 61

原创 消息队列-RabbitMq

消息队列-RabbitMq1、AMQP 简介AMQP (Advanced Message Queuing Protocol,高级消息队列协议)是一个线路层的协议规范, 而不是 API 规范(例如 JMS)。由于 AMQP 是一个线路层协议规范,因此它天然就是跨平台的, 就像 SMTP、 HTTP 等协议一样,只要开发者按照规范的格式发送数据,任何平台都可以通过 AMQP 进行消息交互。像目前流行的 StormMQ、 RabbitMQ 等都实现了 AMQP。2、安装RabbitMq自行百度3、使用

2020-07-01 17:09:24 89

原创 阿里蚂蚁金服技术栈

阿里蚂蚁金服技术栈一、SOFARPC服务发布、引用以及调用的简单流程图如下:当一个 SOFARPC 的应用启动时,如果发现当前应用需要发布 RPC 服务,那么 SOFARPC 会将该服务注册到配置中心,就是图中蓝色实线所示的过程。当引用这个服务的 SOFA 应用启动时,会从配置中心订阅对应服务的地址,当配置中心收到订阅请求后,会将发布方的地址列表推送给订阅方,就是图中绿色实线所示的过程。当引用服务的一方拿到地址以后,就可以调用服务了,就是图中蓝色虚线所示的过程。使用步骤依赖 <d

2020-06-29 17:37:11 1727

空空如也

空空如也

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

TA关注的人

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