沉默的背影 X-Pacific

keep learning

摘要: 浮点数在计算机中也是用二进制表示的,只不过有一定规则(公式) 第一段占 1bit,表示符号位。代称为 S(sign)。 第二段占 8bits,表示指数。代称为 E(Exponent)。 第三段占 23bits,表示尾数。代称为 M(Mantissa)。 对 3.14 这个小数进行表示是正数。所以,S 阅读全文
posted @ 2020-07-30 14:21 乂墨EMO 阅读(823) 评论(0) 推荐(0) 编辑
摘要: 这个问题本身没什么太大价值,但是查了很久所以记录和发泄一下: feign.RetryableException: null executing GET http://****/cr**t/e**/cre****ount/2**8060 at feign.FeignException.errorExe 阅读全文
posted @ 2020-06-11 17:28 乂墨EMO 阅读(1188) 评论(0) 推荐(0) 编辑
摘要: CommitLog 消息内容原文的存储文件,同Kafka一样,消息是变长的,顺序写入 生成规则: 每个文件的默认1G =1024 * 1024 * 1024,commitlog的文件名fileName,名字长度为20位,左边补零,剩余为起始偏移量;比如00000000000000000000代表了第 阅读全文
posted @ 2020-02-20 17:04 乂墨EMO 阅读(7041) 评论(2) 推荐(3) 编辑
摘要: mysql关系型数据库索引原理 数据库的索引是B+tree结构 主键是聚合索引 其他索引是非聚合索引,先从非聚合索引找,见下图 elasticsearch倒排索引原理 两者对比 对于倒排索引,要分两种情况: 1、基于分词后的全文检索 这种情况是es的强项,而对于mysql关系型数据库而言完全是灾难 阅读全文
posted @ 2019-11-01 15:15 乂墨EMO 阅读(7363) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2019-11-01 11:49 乂墨EMO 阅读(781) 评论(0) 推荐(0) 编辑
摘要: 倒排索引存储-分段存储(lucene的功能)在lucene中:lucene index包含了若干个segment在elasticsearch中:index包含了若干主从shard,shard包干了若干segmentsegment是elasticsearch中存储的最小文件单元,也就是分段存储,seg 阅读全文
posted @ 2019-10-14 17:33 乂墨EMO 阅读(723) 评论(0) 推荐(0) 编辑
摘要: uid generator 官网集成文档: https://github.com/baidu/uid generator/blob/master/README.zh_cn.md 由于并没有提供springboot集成版本,网上找的都缺少必须步骤,我这里梳理一下详细的uid generator与spr 阅读全文
posted @ 2019-10-13 21:56 乂墨EMO 阅读(6375) 评论(0) 推荐(0) 编辑
摘要: StampedLock介绍 StampedLock是为了优化可重入读写锁性能的一个锁实现工具,jdk8开始引入 相比于普通的ReentranReadWriteLock主要多了一种乐观读的功能 在API上增加了stamp的入参和返回值 不支持重入 StampedLock如何使用和使用价值 我看了上面的 阅读全文
posted @ 2019-10-09 15:37 乂墨EMO 阅读(9512) 评论(7) 推荐(1) 编辑
摘要: EsClientRHL是一个可基于springboot的elasticsearch 客户端调用封装工具,通过elasticsearch官网推荐的RestHighLevelClient实现,内置了es索引结构工具、es索引数据增删改工具、es查询工具、es数据分析工具或者es用法脚手架,能够轻松集成并 阅读全文
posted @ 2019-10-09 10:24 乂墨EMO 阅读(2198) 评论(2) 推荐(0) 编辑
摘要: 能够扫描到包 ESCRegistrar类主要实现ImportBeanDefinitionRegistrar接口 实现下面方法,会在spring启动早期调用生成代理bean 扫描entity,通过注解配置或者启动目录扫描实体类并托管给Spring管理(和自动代理接口实现类无关,用于自动创建索引) 通过 阅读全文
posted @ 2019-10-07 13:18 乂墨EMO 阅读(2101) 评论(0) 推荐(0) 编辑
摘要: public class GetBasePackage { private Class<? extends Annotation> annotation; public GetBasePackage(Class<? extends Annotation> annotation) { this.annotation = annotation; } public Stream<String> getB 阅读全文
posted @ 2019-09-03 11:31 乂墨EMO 阅读(1071) 评论(0) 推荐(0) 编辑
摘要: google chrome最耐看的主题James White大家可以尝试一下 阅读全文
posted @ 2019-09-01 16:29 乂墨EMO 阅读(1059) 评论(0) 推荐(0) 编辑
摘要: MVCC MVCC细节太多,我直接备忘一下总结: MVCC就是通过事务的ID与行数据的版本(修改事务的ID)进行比较(通过redo log可以回溯版本)得出哪些版本的行数据可见和不可见而实现的事务隔离 一致性读 可重复读,查询只承认在事务启动前就已经提交完成的数据读提交,查询只承认在语句启动前就已经 阅读全文
posted @ 2019-08-27 13:18 乂墨EMO 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 新建:/my/mysql/my.cnf (准备挂载配置文件用) 将以下内容拷贝进去(或者启动一个docker的mysql,并且把/etc/mysql/my.cnf中的内容拷贝出来) 运行如下命令 下面这两行配置是挂载数据 -v /my/mysql/datadir:/var/lib/mysql -v 阅读全文
posted @ 2019-08-21 17:17 乂墨EMO 阅读(8147) 评论(1) 推荐(2) 编辑
摘要: HashMap中哈希算法的关键代码 HashMap的细节我们不谈,只看这个哈希算法的细节(h = key.hashCode()) ^ (h >>> 16) ^按位异或运算,只要位不同结果为1,不然结果为0;>>> 无符号右移:右边补0 为什么要无符号右移16位后做异或运算 根据上面的说明我们做一个简 阅读全文
posted @ 2019-07-18 12:02 乂墨EMO 阅读(6282) 评论(7) 推荐(3) 编辑