自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Redis、Mysql双写情况下,如何保证数据一致

redis mysql 双写

2024-03-28 17:28:35 605 1

原创 Redis中的缓存雪崩、缓存击穿、缓存穿透问题

redis缓存问题

2024-03-27 22:50:41 927 1

原创 mysql null和空值的区别

mysql null 空值 区别

2024-03-27 10:11:12 267

原创 mysql索引

mysql索引

2024-03-27 09:55:35 611

原创 Java Synchronized

synchronized

2024-03-24 16:40:48 661

原创 Java对象结构

Java对象结构

2024-03-24 15:48:28 265

原创 hashmap专题

Java hashmap

2024-03-21 14:13:53 642

原创 Java树形结构

Java 树形结构

2024-03-20 22:39:31 247

原创 java运算符

java运算符

2024-03-20 18:48:40 418

原创 redis集群的3种方式

redis集群

2024-03-20 10:50:54 1486

原创 redis分布式锁

redis分布式锁

2024-03-19 17:58:37 314

原创 Java单例模式

设计模式-单例

2024-03-18 11:02:33 467

原创 java垃圾回收-三色标记法

垃圾回收 三色标记

2024-03-14 18:00:10 675 1

原创 JVM是如何解决跨代引用的?

跨代引用

2024-03-13 16:48:02 507

原创 cms垃圾回收

CMS垃圾回收

2024-03-13 14:40:23 1747

原创 g1垃圾回收器

Java g1 垃圾回收

2024-03-11 22:35:57 977 1

原创 mvcc多版本并发控制

mvcc(Multiversion Concurrency Control)多版本并发控制,是现代数据库(包括Mysql、Oracle、PostgreSQL等)引擎实现中常用的处理读写冲突的手段,目的在于提高数据库并发场景下的吞吐性能。说白了,mvcc就是“维持一个数据的多个版本“。

2024-03-02 11:03:16 982

原创 数据库事务

事务,索引,锁等

2024-02-28 17:46:45 957 1

原创 linux命令相关

more命令类似cat,cat命令是整个文件的内容从上到下显示在屏幕上,more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键就往下一页显示,按B键就会往回一页显示。free -s 5 周期性的查询内存使用信息,每5秒执行一次命令。所以这里2>&1的意思就是将标准错误也输出到标准输出当中。通常超过4个G,文件会下载不下来,需要分割文件。free -m 以MB为单位显示内存使用情况。free -h 以GB为单位显示内存使用情况。三个系统文件的文件描述符分别为0,1和2。

2024-02-01 09:58:14 383 1

原创 springcloud

zuul是spring clound中的微服务网关,是spring cloud 组件之一,用于提供动态路由、请求过滤和负载均衡等功能。

2024-01-26 10:31:34 798 1

原创 java 线程相关方法

Java 线程

2024-01-16 18:28:14 341 1

原创 java aqs

Java aqs

2024-01-16 15:32:40 926 1

原创 Java 锁概念分类

共享锁就是允许多个线程同时获取一个锁,一个锁可以同时被多个线程拥有。排他锁也称作独占锁,一个锁在某一时刻只能被一个线程占有,其他线程必须等待锁被释放之后才可以获取到锁。可重入锁的意义在于防止死锁。所谓重入锁,指的是以线程为单位,当一个线程获取对象锁之后,这个线程可以再次获取本对象的锁,而其他的线程是不可以的。实现原理是通过为每个锁关联一个请求计数器和一个占有它的线程,当计数为0时,认为锁是未被占有的;线程请求一个未被占有的锁时,JVM将记录锁的占有者,并且将请求计数器置为1。

2024-01-10 16:54:22 883 1

原创 java cas

CAS, compare and swap的缩写,中文意思为 比较并交换。cas操作包含3个操作数,内存位置V,预期原值A,新值B。如果内存位置的值和预期原值相匹配,那么处理器会自动将该位置值更新为新值,否则,处理器不做任何操作。

2024-01-08 10:10:14 887

原创 Java基本数据类型

Java中的基本类型数据(Primitive Data Types)是Java语言中预先定义好的、不可再细分的数据类型,它们直接存储值,而不是引用。

2024-01-05 10:17:45 342 1

原创 Java基础-双亲委派机制

其实就是Java加载类的方式。Java虚拟机对class文件采用的是按需加载的方式,也就是说当需要使用该类时才会将它的calss文件加载到内存中。当加载某个类的class文件时,Java虚拟机采用的是双亲委派模式。当一个类加载请求到达类加载器时。类加载器首先把请求转发给其父加载器处理。若所有父加载器都不能处理(或没有父加载器),则当前类加载器才会尝试自己去加载这个类。如果当前类加载器也不能找到所需的类,则抛出ClassNotFoundException异常。这种机制就叫双亲委派。

2024-01-04 10:47:52 393 1

原创 java拷贝对象

如果要使用clone方法,对象必须实现java.lang.Cloneable 接口,否则调用clone方法会报错:throws CloneNotSupportedException ,从上面对clone方法的注解可知clone方法的通用约定:对于任意一个对象X,

2024-01-03 16:49:15 386 1

原创 java equals和==区别

equals,==

2024-01-03 15:42:03 363 1

原创 Java创建对象的方式和过程

例如:线程A要给对象分配8kb,读取到指针当前的位置,时间片用完,切换到线程B,线程B要给它的对象分配16kb,也读取到指针当前的位置(和线程A读取到的一样),将指针向空闲内存方向移动16kb大小,线程B时间片用完,切换到线程A继续执行,由于线程A使用的指针位置还是之前读到的。假设Java堆内存是绝对规整的,所有被使用过的内存都被放在一边,空闲的内存被放在另一边,中间放着一个指针作为分界点的指示器,那所分配内存就仅仅把那个指针指向空闲方向挪动一段与对象大小相等的距离。这些信息存放在对象的对象头中。

2023-12-25 18:40:30 52 1

原创 happen-before

学习happens-before的目的不是只限于知道这些规则的存在,而是要进一步知道如何实现和维护这些happens-before关系,在代码中加以注意。Happens-before 规则是从java代码设计层面保证有序性和可见性的机制。本文将会以图示、样例代码和解释相结合的方式,力图阐述清楚happens-before的原理,为理解如何保证线程安全性打下扎实的基础。

2023-12-25 11:48:02 56 1

原创 JAVA内存模型

是一种确保特定内存操作顺序的指令,他主要用于控制并发环境下的内存可见性和一致性。1. 阻止重排序内存屏障可以防止编译器和处理器对内存操作进行重排序。在内存屏障之前的操作必须在屏障之后的操作 之前完成。2.确保可见性内存屏障能够强制更新当前线程的工作内存与主内存之间的数据同步。在一个线程写入一个变量后放置一个写屏障,可以确保其他线程能够看到这个写入的最新值。3.维持数据依赖性内存屏障能够维护程序中的数据依赖性,确保不会因为重排序而破坏程序的逻辑。volatile关键字。

2023-12-23 18:19:34 864 1

原创 Java垃圾回收(未完待续)

Java垃圾回收

2023-12-21 19:17:44 813

原创 mysql in查询

mysql in 查询 索引失效问题主键查询select * from where id in(1,2,4,5…)这种的主键索引不会失效,包括where条件又其他条件的,也不会导致索引失效。

2021-08-10 19:30:23 706 1

空空如也

空空如也

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

TA关注的人

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