摘要: 工具类 IOUtils.copy() IOUtils.toString(): 可以将输入流转为String Files.readAllBytes(Paths.get(fileUri)) 从本地读取文件到内存。 / FileUtils.readFileToByteArray(new File(path 阅读全文
posted @ 2024-08-13 10:36 zhegeMaw 阅读(20) 评论(0) 推荐(0)
摘要: 互联网的应用场景中,为了支持高并发的请求,服务都是执行的分布式部署(相同的任务可以在集群中不同的服务器上执行)并且现在的服务容器都是支持多线程,相同的任务也可能会被同一个容器多次执行,都要求执行结果都满足幂等性的设计原则。 分布式锁,就是为了确保在分布式的环境下,相同任务只会执行成功的执行一次,后续 阅读全文
posted @ 2024-08-13 01:26 zhegeMaw 阅读(26) 评论(0) 推荐(0)
摘要: select …… for update 是一种分布式锁,为了在查询时,避免其他用户以该表进行增、删、改等操作,造成表的不一致性。一般不加数据库锁,比较重(太底层,影响广泛),可以使用分布式锁 / sychorized / Lock。 一、例子 select status from t_goods 阅读全文
posted @ 2024-08-13 01:22 zhegeMaw 阅读(228) 评论(0) 推荐(0)
摘要: https://tech.meituan.com/2018/11/15/java-lock.html 1、乐观锁、悲观锁 乐观锁:认为冲突不会发生,因此在访问数据时不加锁,只有在修改时才验证数据是否被修改过。 应用场景:读多写少。不加锁,可以提升性能。 问题:高并发写的场景下,会频繁失败并重试,非常 阅读全文
posted @ 2024-08-13 01:19 zhegeMaw 阅读(24) 评论(0) 推荐(0)
摘要: 1、redis自增 2、同步代码块 3、原子类 AtomicInteger LongAdder :是JDK8添加到JUC中的。它是一个线程安全的、比Atomic*系工具性能更好的"计数器"。 3.1 AtomicInteger 线程安全地并发增加数值。 3.2 LongAdder 是AtomicLo 阅读全文
posted @ 2024-08-13 01:16 zhegeMaw 阅读(47) 评论(0) 推荐(0)
摘要: https://blog.csdn.net/manzhizhen/article/details/81413014 1、信号量Semaphore 2、线程池 3、计数器AtomicInteger 4、阻塞队列 阅读全文
posted @ 2024-08-13 01:14 zhegeMaw 阅读(14) 评论(0) 推荐(0)
摘要: 本文的数据同步问题指的是mysql与redis之间的数据一致性问题。对于主从机器之间的数据同步问题分别查看mysql/redis。 数据一致性问题 MySQL 和 Redis 通常一起使用构成缓存系统(MySQL 作为持久层,Redis 作为缓存层),这就涉及到两者之间数据同步,当遇到网络延迟、服务 阅读全文
posted @ 2024-08-13 01:14 zhegeMaw 阅读(16) 评论(0) 推荐(0)
摘要: 一、什么时候会出现线程安全问题? 无线程安全问题: 1、在单线程中不会出现线程安全问题 2、java领域的线程安全问题,通常是全局变量或静态变量引起的,若每个线程对共享变量只有读操作,一般来说该变量是线程安全的,若有写操作,则需要考虑线程安全问题。 3、当多个线程执行一个方法,方法内部的局部变量并不 阅读全文
posted @ 2024-08-13 01:00 zhegeMaw 阅读(18) 评论(0) 推荐(0)
摘要: 1、Object类 在没有泛型的情况的下,通过对类型 Object 的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。对于强制类型转换错误的情况,编译器可能不提示错误,在运行的时候才出现异常,这是本身就是一个安全隐 阅读全文
posted @ 2024-08-12 14:21 zhegeMaw 阅读(27) 评论(0) 推荐(0)
摘要: static可以用来修饰 类 /方法/ 类变量/ static代码块 。 从JVM的类加载机制的角度讲,静态资源是类初始化的时候加载的,而非静态资源是类new的时候加载的。 一、static类/方法/变量 static修饰类 static修饰方法 静态方法,方法是属于类的,可以通过类名.方法名访问。 阅读全文
posted @ 2024-08-12 00:40 zhegeMaw 阅读(177) 评论(0) 推荐(0)