- 博客(54)
- 资源 (8)
- 收藏
- 关注
原创 (七)消息队列-Kafka 序列化avro(传递)
多年前,由于工作的性质,发现这系列没有写完,想了想,做人做事还是要有始有终。🤣实在是借口太多了,太不像话了…由于时间过得太久了,这篇开始,可能很多技术以最新或最近的几个版本为主了。Avro通过Schema定义与二进制编码,为Kafka提供了高效、类型安全的序列化方案。结合Schema Registry可实现动态兼容性管理,适用于复杂业务场景下的数据演进需求。实践中需注意Schema版本控制与性能调优,具体工具链配置可参考Confluent官方文档27。
2025-02-27 23:06:13
1061
原创 ElasticSearch查询指南:从青铜到王者的骚操作
想象你有一本菜谱,但目录是按食材排列的:索引实战三部曲:第二章 DSL语法:搜索界的乐高积木2.1 万能bool查询:相亲条件排列组合2.2 查询全家桶套餐查询类型使用场景相当于相亲中的…精准匹配“必须本地户口!”语义分析“三观合得来就行”词组匹配“要求’上海交大毕业’”范围筛选“身高175cm以上”第三章 高阶操作:搜索结果的精装修3.1 分页的陷阱与救赎3.2 排序的七十二变第四章 实战演练:电商搜索系统改造记4.1 索
2025-02-23 21:47:10
295
原创 Elasticsearch 数据建模:从原理到实战的降维打击指南
存储成本 vs 查询性能:是否需要预处理字段?灵活性 vs 稳定性:动态映射开还是关?实时性 vs 吞吐量:Refresh间隔设多少?# 查看索引的真实内存占用愿你的数据模型既能乘风破浪,又能岁月静好!🌊。
2025-02-17 23:25:23
747
原创 ElasticSearch索引优化:让你的搜索引擎比相亲对象更懂你
数据建模比调参重要→ 追姑娘要先了解喜好监控比直觉可靠→ 女朋友生气要看脸色而不是猜压测比祈祷有用→ 婚前试同居比算八字实在分片设计按需来,映射类型不能歪JVM内存32G顶,查询多用filter写入批量别单条,冷热分离是真爱作者:一个用头发换经验的ES调优侠声明:本文原理若有不准确,欢迎带刀来战互动话题:你的ES曾经因为什么奇葩原因崩过?说出来让大家开心一下!
2025-02-13 00:32:21
735
1
原创 当ES与MySQL开始「异地恋」:大数据量同步方案全解析
MySQL是严谨的财务总监(ACID强迫症患者)ES是夜店最靓的DJ(擅长花式查询的全文搜索引擎)当结构化数据需要全文检索/聚合分析时,这对CP必须学会「双向奔赴」
2025-02-09 20:20:40
754
原创 ElasticSearch 从入门到“真香”指南(终极详细版)
副标题:从“LIKE %% 暴君”到“搜索之王”,你只差这一篇!3.3 倒排索引(Inverted Index)—— ES的“核武器”ElasticSearch 从入门到“真香”指南(终极详细版)4.3.1 组合查询:must(且)、should(或)3.2 文档(Document)—— 数据的“身份证”3.1 索引(Index)—— 数据的“主题酒店”2.2 集群搭建(从“单身狗”到“兄弟连”)4.3 复杂查询(ES的“高光时刻”)4.2 插入文档(ES的“朋友圈”)7.1 快照备份(ES的“后悔药”)
2025-02-04 20:55:16
808
原创 本地缓存~
Caffeine是使用Java8对Guava缓存的重写版本,在Spring Boot 2.0中取而代之,基于LRU算法实现,支持多种缓存过期策略。以下摘抄于https://github.com/ben-manes/caffeine/wiki/Benchmarks-zh-CN基准测试通过使用来提供准确的分析结果。这些缓存将被如下配置,64464。
2025-02-02 21:11:48
1020
原创 缓存的今生今世
了解缓存,首先要了解内存概念,毕竟缓存离不开内存。内存又称内部存储器和主存储器(RAM),内存条由内存芯片、电路板、金手指等部分组成。它与CPU之间的连通是通过总线完成,是CPU与外存的连通桥梁。计算机里所有的运算都是有内存的来完成的,即使CPU再快,内存的容量不够和读写速度不行,计算机的性能也大大折扣。。
2025-02-02 20:57:50
1665
原创 SpringBoot+Implala常见问题:[Cloudera][ImpalaJDBCDriver](500605) 错误
问题描述Caused by: java.sql.SQLException: [Cloudera]ImpalaJDBCDriver问题分析:当CDH机器配置了LDAP验证的时候,Dbeaver或者其他链接工具或者java代码链接impala时,需要在impala 链接Url 后添加AuthMech=3属性Cloudera官网文档里也说明了这件事https://docs.cloudera.com/documentation/other/connectors/impala-jdbc/latest/Cl
2021-03-04 19:55:50
2343
1
原创 SpringCloud-Eureka启动客户端注册地址无法注册成功的问题
注册中心地址修改了,但客户端一直提示默认地址,原因:配置问题,eureka.client.service-url.defaultZone的被修改成了default-zone
2021-03-01 13:17:57
772
原创 SpringBoot2.4+log4j2 JPA的SQL日志不打印问题
maven引入pring-boot-starter-log4j2:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <exclusions> <!-- 排除自带的logbac
2021-02-23 11:51:56
1941
原创 Hive安装常见问题
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]原因:SLF4J API 被设计为一次绑定一个且只绑定一个底层日志框架。如果类路径上存在多个绑定,SLF4J 将发出警告,列出这些绑定的位置。解决:按照提示信息(如截图)SLF4J: Found binding in ~[jar:file:/Users/liujun/development/hive/apache-hive-3.1.2-bin/..
2021-01-17 21:39:31
1307
原创 SpringBoot常见问题
jpa配置相关问题:Access to DialectResolutionInfo cannot be null when ‘hibernate.dialect’ not set解决:yml或properties添加spring.jpa.database-platform=org.hibernate.dialect.MySQLDialect
2021-01-04 23:43:11
173
原创 VUE-常见问题总结
vue-devtools工具安装提示 Electron failed to install correctly, please delete node_modules/electron and try installing again问题根据官方文档安装,mac电脑提示问题分析:根据上面提示 查看index.js 14行,发现是读取path.txt这个文件找不到,electron安装时缺少文件。解决方案 一: 1.下载electron包,然后吧dist目录 和path.txt拷贝到devtoo.
2020-12-06 12:21:45
246
原创 (五)消息队列-Kafka Broker(主见)
读视者谓明,读听者谓聪。 ——《韩非子·外储说右上》前言最近说忙其实也不忙,抽时间留下笔墨,确实又被琐碎事情打乱,当然懒惰是原罪(不好意思,请饶恕,并未说Rapper懒惰,好歹人家还是说唱新世纪的冠军,哈哈,暴露了自己伪黑怕迷)。之前定的主题“Broker”,构思了几个大纲,但发现写出来的内容并非很多,容易误解伪水文的劣迹。(哈哈,LZ的内心戏真多,搞得自己文章有人看似的,哈哈,打脸了)BrokerKafka多台服务.
2020-12-03 09:23:37
1870
1
原创 Flutter-常见问题
WebStorm安装Dart 插件,需要下载Dart安装包,并配置环境变量启动Dart web项目时,提示: No active package webdev解决方案: 激活编译工具webdev,即在命令行执行://环境变量只配置了flutter sdk而没有配置dart sdkflutter pub global activate webdev//环境变量已经配置了dart sdk 我用的是这个命令pub global activate webdev如果还提示No active .
2020-11-04 22:38:52
4187
原创 (三)消息队列-Kafka偏移量(Offset)(相念)
相思一夜情多少,地角天涯未是长。 -- 张仲素《燕子楼》前言上一篇文章大概讲述了偏移量Offset的概念,本篇文章会详细讲讲偏移量。消费者Offset生产者Offset后序下期预告,敬请关注:(四)消息队列-Kafka分区再均衡(争执)...
2020-11-03 21:23:39
9188
2
原创 (二)消息队列-Kafka核心概念(相知)
相识满天下,知心能几人。 —— 明·冯梦龙前言话说今天是1024,程序猿(媛)节,在“屌丝”盛行之时,称为屌丝节。随着全面小康社会的展望,为了彰显IT界码农的身份,程序猿(媛)由屌丝晋升为“爱码仕”,也许是为了与双十一与时俱进吧。以上纯tx! 还是来点干货吧…Kafka架构从上图可以看出,Kafka主要有生产者、broker、消费者群、消费者、zookeeper概念,各个概念一一来讲解。Producer注:生产者生产者,以ProducerR
2020-10-24 13:37:29
815
原创 (一)消息队列-Kafka(相遇)
(一)消息队列-Kafka(相遇)前言Kafka简介消息队列的作用Kafka与其他MQ的优缺点Kafka的应用场景插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入前言各位JRS(不好意思,貌似我跑错“片场”了),之前有一直学习消息队列的知识,以前工作中也用了下RabbitMQ,对Kafk
2020-10-22 20:53:05
522
2
原创 MySQL锁-行锁与间隙锁
MySQL锁-行锁与间隙锁昨天新来的同事,问了我间隙锁的问题,在我一番解释后,发现好多处讲解不对,实实在在的打脸。今天重新梳理下,发现之前了解不够深入。行的锁定方式行锁:Record lock,主要更新删除是,等值查询条件是唯一索引时采用的间隙锁:Gap lock,其实它是行锁中的一种。它锁定的是一个范围区间的索引,遵守左开右闭原则。Next-Key Lock: 行锁+间隙锁的组合可重复读隔离级别下加锁规则加锁的维度是Next-key Lock,遵循左开右闭关,也称前开后闭插入过程中
2020-07-14 17:05:59
2379
1
原创 老汉谈——LRU方案
含义LRU,全程Least Recently Used, 最近最少使用的,也是最近最久没有使用的意思。一般用在内存淘汰策略里。如Redis的内存淘汰机制。设计原则如果一个内存最近一直没有使用,那么它的访问概率就会很低,当内存空间快满的时候,就应该把这些最近最近很久没有反问的数据给淘汰掉。工作原理操作系统教程里的LRU工作原理:页置换算法。该算法的思路是,发生缺页中断时,选择未使用时间最长的页面置换出去假如内存按照栈的方式访问,栈顶是最远使用的,栈底是最近使用的,满足栈的先进后出原则
2020-05-24 22:55:58
318
原创 Linux文件与目录的基本命令
ls命令作用:显示目标列表或目录的內容语法:ls[选项][目录或文件]-a:显示指定目标下所有子目录与文件,包括隐藏文件-l:显示文件的详细信息-d: 显示目标例:ls -dl[root@localhost ~]# ls -dldr-xr-x—. 4 root root 222 Aug 5 00:35 .cd命令作用:用来切换工作目语法:cd [directory]c...
2020-03-29 17:10:07
191
原创 Redis缓存雪崩、缓存穿透、缓存击穿
Redis缓存前言在互联网应用上,Redis使用越来越广泛,甚至传统企业应用也是如此。高性能的读取能力,广受程序员的喜爱。一般而言,都是先从Redis里读取数据,如果数据存在,则直接返回数据,否则,就从DB里读取(如下图)。但由于Redis的key的失效时间、不存在的key、网络问题或其他问题导致Redis崩溃等情况,会直接去访问数据库,这个时候如果是高并发访问,会导致Redis压力增大,甚至...
2020-03-29 17:04:22
734
1
原创 老汉谈——压力测试
压力测试http_loadhttp_load并行运行多个http获取,来测试web服务器的吞吐量。然而不像大多数这样的测试客户端,它运行在一个单一的过程中,所以它不拘泥客户端机器。它可以配置https取回你给它一个文件包含url的列表可能获取,一个标志指定如何开始连接(通过利率或模拟用户的数量),和一个标记指定何时退出(一定次数后取回或给定的运行时间)。也有可选的校验和旗帜,节流,随机抖动...
2019-12-08 21:14:22
217
原创 Linux远程服务器拷贝方法
linux 远程服务器之间的文件或文件夹拷贝使用scp将一个Linux系统中的文件或文件夹复制到另一台Linux服务器上以下举例子:本地服务器:192.168.135.131远程服务器:192.168.135.132文件将本地文件拷贝到远程,故在本地服务器192.168.135.131操作scp 文件名 用户名@计算机IP或者计算机名称:远程路径scp /tmp/jdk...
2019-11-17 20:50:23
1102
原创 CentOS7+Zookeeper安装
下载地址各版本:https://www-us.apache.org/dist/zookeeper/稳定版本:https://www-us.apache.org/dist/zookeeper/stable/服务器下载安装[root@localhost /]# cd /usr/local[root@localhost local]# wget https://www-us.apache....
2019-11-17 20:31:33
166
原创 Nginx-1.16.1安装
Niginx-1.16.1安装安装步骤上传本地包,最后用源码包 命令rz,[root@localhost tmp]# rz [root@localhost tmp]# lltotal 1012-rw-r--r--. 1 root root 1032630 Nov 3 10:40 nginx-1.16.1.tar.gz解压[root@localhost local]#...
2019-11-10 18:17:21
7532
2
原创 WIN10+Mysql5.26安装
检查是否安装过MySQLrpm -qa|grep mysql如果安装过,则会显示安装所有的MySQL所有相关的,否则什么都没有,如检查是否安装过mariadb数据库如果有一定要卸载rpm -qa | grep mariadb卸载命令:systemctl stop mariadbrpm -qa | grep mariadbrpm -e --nodeps mariadb-libs...
2019-06-29 20:55:23
195
原创 MySQL-执行过程
上一篇文章简单的描述了下MySQL的存储结构。这篇文章主要介绍MySQL的执行过程。只有更全面的了解SQL语句执行过程,才能更好的进行SQL的设计和优化。##时序图.png)客户端/服务端通信协议发送一条查询SQL给服务端(图里的第一个步骤没有写很清楚,懒得改了)MyS...
2019-04-21 16:19:56
240
原创 老汉谈——MySQL-存储结构
MySQL-逻辑结构结构图,及所有跨存储引擎的功能(存储过程、视图、触发器等)都...
2019-04-21 00:24:35
1296
原创 MAT分析工具
简介以下译于官网:Eclipse Memory Analyzer是一个快速且功能丰富的Java堆分析器,可帮助您查找内存泄漏并减少内存消耗。使用Memory Analyzer分析具有数亿个对象的高效堆转储,快速计算对象的保留大小,查看谁阻止垃圾收集器收集对象,运行报告以自动提取泄漏嫌疑者。下载地址https://www.eclipse.org/mat/downloads.php最近...
2019-04-07 15:21:39
64228
2
原创 SpringBoot单元测试(三)Mockito
描述上一篇文章写了几个简单MockMVC的测试类,可以简单了解下MockMVC的用法。这篇文章主要是用来介绍Mockito的用法。它可以通过模拟对象来执行你需要的测试行为。模拟外部依赖和模拟插入代码执行测试代码校验代码执行的正确性Mock介绍Mock,从字面上就知道是模拟的意思。其实它就是创建一个虚拟的对象,然后在测试环境中代替真实的对象,以达到最终的测试目的。借用官方通用的说法:验证...
2018-12-31 15:58:42
1428
原创 SpringBoot单元测试(二)MockMVC
介绍MockMvc,从字面来理解,很好理解,主要是用来模拟MVC。简单来说,就是模拟可以从客户端请求后端的Controller类。样例:1. 非自动注入式TestApplicationTests类已经有@RunWith(SpringRunner.class)和@SpringBootTest注解了,具体参考上一篇文章SpringBoot 单元测试(一)SpringBootTestpack...
2018-10-21 18:03:21
815
原创 SpringBoot 单元测试(一)SpringBootTest
SpringBoot 单元测试(一)SpringBootTest描述:该注解是用到类名上,表示自动启动加载类或指定某个或多个加载启动类,默认会加载当前module下的启动类。而启动类(如下)@SpringBootApplicationpublic class TestApplication { public static void main(String[] args) {...
2018-10-07 16:25:58
6359
原创 Linux的基本命令 - 文件与目录
ls命令作用:显示目标列表或目录的內容语法:ls[选项][目录或文件]-a:显示指定目标下所有子目录与文件,包括隐藏文件-l:显示文件的详细信息-d: 显示目标例:ls -dl [root@localhost ~]# ls -dl dr-xr-x—. 4 root root 222 Aug 5 00:35 .cd命令作用:用来切换工作目语法...
2018-08-27 22:55:11
212
原创 Linux Python3 安装方法
Linux Python3 安装方法最近准备研究下redis ,准备使用python语言来安装redis,顺便学习下火得快过时但又必备技术Python。由于安装的redis是最新版本,对应python版本为3.0+。但linux系统自带的python2,中途不小把python版本给删除了,导致好多东西不能用,因为他自动集成了其他的包。网上的一些教程不是很适合。以下是本人亲测的,希望对大家有参...
2018-07-31 22:08:34
1954
原创 老汉谈——线程池原理
线程池JDK1.8官方介绍: Thread pools address two different problems: they usually provide improved performance when executing large numbers of asynchronous tasks, due to reduced per-task invocation overh...
2018-07-07 21:06:41
583
原创 老汉谈——Java内存模型-同步操作与规则
Java内存模型-同步操作与规则内存间交互操作,其实就是关于主内存和工作内存之间具体的交互协议,即一个变量如果从主内存拷贝到工作内存,如果从工作内存同步回猪内存之内的实现细节。Java内存模型定义以下8中操作来完成。Lock主内存变量标记成一个线程独占的状态Unlock将主内存一个锁定的状态变量给释放出来,释放后的变量可以被其他线程锁定Read将主内存的变量...
2018-05-06 17:12:43
1197
linux zookeeper3.5.6.rar解压最一层目录
2019-11-17
win10 64Bit Net Frame3.5离线安装microsoft-windows-netfx3-x64-package.cab
2018-10-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人