摘要: 前言 Elastic自身设计了集群分片的负载平衡机制,当有新数据节点加入集群或者离开集群,集群会自动平衡分片的负载分布。 需求背景 公司原有大数据平台基于公有云构建,由于种种原因,现在需要迁移到自建机房,Elasticsearch集群承担了大数据平台主要的对外查询需求,也有部分实时计算需求基于Ela 阅读全文
posted @ 2021-05-16 17:11 ppjj 阅读(337) 评论(0) 推荐(0) 编辑
摘要: 典型问题之一:Elasticsearch集群的磁盘被打爆 造成磁盘被打爆有以下几种原因: 索引泛滥,索引接入无流程管控; 索引无生命周期管理; 索引分片数量不合理,单分片过大; 日志类索引未按天等细粒度划分,单索引过大; 多集群复用同一服务器节点; 磁盘容量大小不一。 这些问题比较基础,其实也反映出 阅读全文
posted @ 2021-05-16 17:08 ppjj 阅读(1160) 评论(0) 推荐(0) 编辑
摘要: logging: level: root:debug 可以打印所有日志,包括启动日志,这样就知道在哪里报错。假如启动失败的话,就可以在报错的地方设置断点进行调试,从而定位到启动失败原因。 也可以打印某一个jar包下面的日志,比如spring security: logging: level: roo 阅读全文
posted @ 2021-05-16 16:59 ppjj 阅读(919) 评论(0) 推荐(0) 编辑
摘要: findFirst()和findAny()存在并行上的区别,findFirst并行限制较多,findAny并行限制较少,如果不在乎哪个值,用findAny。 两个list列表用stream流进行过滤: List<ChangeRecordListDTO> filteredList = allList. 阅读全文
posted @ 2021-05-16 16:57 ppjj 阅读(2888) 评论(0) 推荐(0) 编辑
摘要: flatmap不是像map那样把数组映射成单独一个流{streama,streamb},而是把数组中的每一个值映射成一个值a,b..,最后合并所有的值变成一个流,实现流的扁平化,还有一个区别flatmap返回值必须是Optional<>,而map返回值可以是任何类型,会有嵌套,比如Optional< 阅读全文
posted @ 2021-05-16 16:56 ppjj 阅读(544) 评论(0) 推荐(0) 编辑
摘要: 1、概述想必大家一想到事务,就想到ACID,或者也会想到CAP。但笔者今天不讨论这个,哈哈~本文将从应用层面稍带一点源码,来解释一下我们平时使用事务遇到的一个问题但让很多人又很棘手的问题:Transaction rolled back because it has been marked as ro 阅读全文
posted @ 2021-05-16 16:49 ppjj 阅读(8596) 评论(1) 推荐(1) 编辑
摘要: taints和tolerations部署到指定节点,部署到特定的硬件,排除不需要的应用,它与label selector区别是,label selector只匹配有label,但是不保证没有label不会部署到这个pod上,如果设置taints,只匹配设置了tolerations的容器。 节点亲和性 阅读全文
posted @ 2021-05-16 16:12 ppjj 阅读(101) 评论(0) 推荐(0) 编辑
摘要: JVM JIT编译器优化技术有近100中,其中最最重要的方式就是内联(inlining)。方法内联可以省掉方法栈帧的创建,方法内联还使让JIT编译器更多更深入的优化变成可能。本人在fastxml(速度比XPP3(基于xmlpull)还快的xml解析器)开源项目中针对方法内联进行了很多学习和实践,这里 阅读全文
posted @ 2021-05-16 15:13 ppjj 阅读(408) 评论(0) 推荐(0) 编辑