乐观锁、悲观锁,这一篇就够了!
乐观锁、悲观锁,这一篇就够了! 1. 乐观锁 乐观锁顾名思义就是在操作时很乐观,认为操作不会产生并发问题(不会有其他线程对数据进行修改),因此不会上锁。但是在更新时会判断其他线程在这之前有没有对数据进行修改,一般会使用版本号机制或CAS(c...
乐观锁、悲观锁,这一篇就够了! 1. 乐观锁 乐观锁顾名思义就是在操作时很乐观,认为操作不会产生并发问题(不会有其他线程对数据进行修改),因此不会上锁。但是在更新时会判断其他线程在这之前有没有对数据进行修改,一般会使用版本号机制或CAS(c...
不用临时的变量 优雅、高效的交换两个数方法 int a = 1; int b = 2;a = a + b;b = a – b;a = a – b; 这个思路很巧妙,但也存在一定问题: 万一溢出了怎么办? 这...
第一节、B树、B+树、B*树1.前言: 动态查找树主要有:二叉查找树(Binary Search Tree),平衡二叉查找树(Balanced Binary Search Tree),红黑树(Red-Black Tree ),B-tree/...
在了解对称加密和非对称加密的区别之前我们先了解一下它们的定义: 对称加密(Symmetric Cryptography),又称私钥加密 对称加密是最快速、最简单的一种加密方式,加密(encryption)与解密(decryption)用的是...
1、排序方法 将被排序的记录数组R[1..n]垂直排列,每个记录R[i]看作是重量为R[i].key的气泡。根据轻气泡不能在重气泡之下的原则,从下往上扫描数组R:凡扫描到违反本原则的轻气泡,就使其向上...
实时搜索引擎Elasticsearch Elasticsearch(简称ES)是一个基于Apache Lucene(TM)的开源搜索引擎,无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进、性能最好的、功能最全的搜索引擎库。 E...
但是使用的是 Ribbon 自带的负载均衡策略,那么 Ribbon 是否可以根据实际情况,自定义负载均衡策略呢?答案是肯定的,这一篇文章主要来介绍一下 Ribbon 如何自定义负载均衡策略。 1. 主启动类处理 还是使用上一节的客户端代码,...
运行时却碰到了如下错误: 尤其是第一行信息,似乎提示一个莫名其妙的无此方法错误。Spring boot框架很多组件都是基于依赖注入(DI),有些错误在编译时可能无法被检测出来,只有在运行时才暴露出来。既然提示无此方法,那么肯定是某个组件(包...
SpringBoot自带监控功能Actuator,可以帮助实现对程序内部运行情况监控,比如监控状况、Bean加载情况、环境变量、日志信息、线程信息等 配置Actuator pom.xml 浏览器打开链接http://localhost:80...
String.trim()源码解析 trim()这个方法一般用来消除字符串两边的空格,但是内部是如何实现的呢? 附上源码: 从源码可以看出,这个方法实际上是将字符串除了两端ASCII码小于空格的字符之外的部分截取出来返回,如果没有空格则将原...