多线程/并发
文章平均质量分 93
猎户星座。
花有重开日,人无再少年。
展开
-
数据库乐观锁
从本质上讲,乐观锁是在首次读取或访问数据记录进行潜在更新,但实际上并未锁定数据记录。使系统在乐观的假设下运行,即冲突很少且不会经常发生。仅当即将提交实际更新时,系统才会检查冲突。如果数据同时被另一个事务更改,则当前更新失败。第一步是向您的实体添加版本字段并使用 @Version 对其进行注解。该字段通常可以是整数或时间戳。@Entity@Id@Version在此设置中,JPA 将使用版本字段来跟踪每个产品实体的更改。转载 2024-02-21 15:26:53 · 246 阅读 · 0 评论 -
CAS机制
CAS 机制全称: Compare and Swap,即 比较并替换, 。也有叫做 Compare and Set 的,即比较并设置。顾名思义,分为两步:这种机制在确保原子化操作、实现乐观锁的同时也无法避免一些缺陷,咱们从源码入手分析一下其原理、乐观锁和缺陷等各个细节。以 JDK 中最常用的 类的源码为例进行探讨,版本为 JDK 8。首先 AtomicInteger 将通过 提供的静态方法 获得其单例。为什么叫 Unsafe 呢?因为它提供了针对任意地址的数据进行不安全读写等内存操作、线程调度、转载 2024-01-30 15:37:56 · 64 阅读 · 0 评论 -
限流实现方案
限流分类限流的实现方案有很多种,磊哥这里稍微理了一下,限流的分类如下所示:合法性验证限流:比如验证码、IP 黑名单等,这些手段可以有效的防止恶意攻击和爬虫采集; 容器限流:比如 Tomcat、Nginx 等限流手段,其中 Tomcat 可以设置最大线程数(maxThreads),当并发超过最大线程数会排队等待执行;而 Nginx 提供了两种限流手段:一是控制速率,二是控制并发连接数; 服务端限流:比如我们在服务器端通过限流算法实现限流,此项也是我们本文介绍的重点。合法性验证限流为最常规的业务代转载 2021-04-08 15:59:58 · 385 阅读 · 0 评论 -
线程池
ThreadPoolConfigpackage com.newland.iot.config;import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.Bean;import org.springframework.context.an...原创 2018-11-29 11:17:56 · 129 阅读 · 0 评论