自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5229)
  • 资源 (10)
  • 收藏
  • 关注

原创 【表达式】Java 表达式引擎选型调研分析

本文将针对 AviatorScript 、MVEL 、OGNL 、SpEL 、QLExpress 、JEXL 、JUEL 几种常见表达式引擎进行选型调研。先简单介绍一下这几种表达式引擎。综合以上测试结果,AviatorScript,SpEl,MVEL,OGNL 性能表现相对较好。AviatorScript 性能相对较好,表现均衡,但其语法相较其他引擎跟 Java 的差异略大。SpEl 除了在个别场景下性能较差,大部分场景表现非常出色,尤其是在字面量和含有变量的算数计算及方法调用场景下。

2025-05-17 00:30:00 32

原创 【Flink】Flink本地运行打印如下日志 too high to satisfy all of the requests

这段代码的主要目的是在内存使用超过阈值时生成警告消息,以提醒用户可能存在内存问题,特别是对网络吞吐量的影响。警告消息提供了一些建议,例如增加可用网络内存或减小网络缓冲池的配置大小。

2025-05-17 00:15:00 9

原创 【Flink】Flink报错ApplicationMaster is out of sync with ResourceManager, hence resyncing

有个现场的hadoop有问题,然后他们重建了Hadoop集群,但是flink运行一段时间就报错,主要报错ApplicationMaster is out of sync with ResourceManager, hence resyncing。这里看起来是Hadoop不稳定,然后ResourceManager不停的在切换主备状态,导致程序无法连接。故障转移尝试次数很高(例如,5278 次尝试),这表明系统无法与 ResourceManager 建立稳定连接。

2025-05-15 00:45:00 18

原创 【Kafka】Kafka获取消费组位置position()方法卡死

文章讨论了在使用Kafka消费者API时,获取分区偏移量(offset)时可能遇到的超时问题。作者在代码中使用了position方法来获取分区的偏移量,但未设置超时时间,导致程序在某些情况下卡死。通过分析Kafka的源码,作者发现position方法在获取偏移量时会阻塞,直到确定位置或超时。超时时间由default.api.timeout.ms配置项决定,默认值为60000毫秒(60秒)。作者建议在调用position方法时显式设置超时时间,以避免因网络问题或服务器响应延迟导致的程序卡死。

2025-05-15 00:30:00 187

原创 【Kafka】Kafka have leader brokers without a matching listener

我们flink消费kafka报错Kafka have leader brokers without a matching listener我们这个报错主要是对方的kafka5个节点,然后崩溃了2个,而我们的topic是,正常情况下,每个分区是在一台机器上均匀分布,但是现在他们崩了2个,导致这两台机器上的topic区分缺失了2个,然后因为没有副本,然后就报错了。

2025-05-08 00:30:00 155

原创 【Kafka】Kafka报错 this server does not host this topic-partition

报错信息 “this server does not host this topic-partition” 表明在尝试删除 Kafka 主题时,服务器无法找到相应的主题分区。是这样的我使用kafka 2.3版本,然后使用api删除topic,然后执行报错this server does not host this topic-partition,这个意思是找不到相应的topic。我们的情况是我们是web界面展示topic,所以topic一定是有的,但是不清楚为何会报错这个,可能是同时有别人删除了。

2025-05-08 00:15:00 27

转载 【Flink】YARN Container 启动上下文

在 YARN 中,不管是 ApplicationMaster(后面均简称 AM),还是一般的 container(例如 MR 中的 map 任务、reduce 任务;Spark 中的 executor 或者 Flink 中的 TaskManager),都有各自的启动上下文(ContainerLaunchContext)。上下文中包含了任务启动所依赖的资源(包括 jar,资源文件等)、环境变量、启动参数等。

2025-05-07 00:45:00 14

原创 【kakfa】kafka 2.x 控制台消费报错 UNKNOWN_TOPIC_OR_PARTITION、删除不存在、创建提示存在

然后他的kafka集群有5台机器,挂了2台,然后他们把kerberos都先关闭了,但是挂的怎么都无法重启成功。20231228日,我负责的一个现场环境,整个环境中病毒了,毒性很深,30多台机器全崩溃的,而且是kerberos认证的环境。而且这个环境有个神奇的地方,重新创建这个topic会报错,提示topic已经存在,但是你又查不到这个topic。因为上面原因,我们消费数据有问题,然后我们消费数据的时候出现问题,因此我就打算重建topic,步骤如下。后面运维手动处理了一下元数据,才呢个查出来。

2025-05-07 00:30:00 137

原创 【Flink】No JAAS configuration section named Client was found in specified JAAS configuration

但是这个异常又不影响程序运行。但是这个有什么影响呢?下面我来解释一下,这个是flink认证相关的,他说/tmp/jaas-3331740396007956723.conf 这个文件中不包含一个叫Client的配置。如果有的话,那么就会走认证相关的配置。如果你的环境没有开启kerbeos认证的话,那么是没有什么问题的。

2025-05-07 00:15:00 40

原创 【java】java 99.99 临界值的问题、19.990000000000002

我们做flink流计算统计的时候,发现下面这个相加是虽然我们知道double和float是临界值是有精度问题的,但是我们怎么规避这个问题呢?

2025-04-30 21:45:00 29

原创 【Elastic】Elastic 为什么建议强制设置master节点

主节点的作用包括集群状态的管理、节点的发现和主节点选举等。我们曾经一度使用的是没有主节点的3个es节点,把我们整得死去活来的,主要是我们当初资源很少,十几个服务都在一台机器,多个docker,3个es节点也在一台宿主机3个docker容器内,当初想的是如果机器挂了,那么都会挂,设置主节点意义不到,后来发现,不设置不行,会有很多问题。集群没有设置主节点,导致创建索引时,数据节点要充当临时主节点的角色,写入量较小的时候,影响不大,当写入压力过大时,会加剧数据节点的负载,影响索引的创建速度。

2025-04-30 15:29:34 41

原创 【Spring】浏览器接口报错 net::ERR_CERT_AUTHORITY_INVALID、HandlerExceptionResolver、自定义状态码

这里按理说应该是返回我们的403,而且debug的时候,应该走到我们抛出AcessDeniedException异常的地方,但是实际上什么都没有调用,看起来没有到后端就被拦截了,跨域什么的。然后与前端约定,当出现这个异常的时候,我们把状态码改成403,然后前端发现是403的时候,统一跳转到登录界面。首先用户登录系统,然后查看数据,接口正常情况下,我们返回的是200状态码。然后这里触发了我,因为我是强制删除了缓存信息,是不是证书也被清理了呢?过了很久,都没有找到原因,而且界面看起来是跨域相关的报错。

2025-04-28 00:30:00 89

原创 【Flink】ResourceManager within the specified maximum registration duration PT5M

每次出现这种错误,需要人工干预手动重启jobmanager才能解决,不然任务就不运行了。这个错误日志表明 Flink TaskManager 在向 ResourceManager 注册时超时,导致 TaskManager 被终止。具体来说,错误信息是,指示在规定的最大注册持续时间内无法在 ResourceManager 上完成注册。确保 TaskManager 能够与 ResourceManager 正常通信。检查网络配置,确保没有防火墙或其他网络问题导致通信中断。

2025-04-28 00:15:00 131

原创 【Flink】The ResourceManager does not recognize this TaskExecutor

一个K8S上部署的flink集群的问题,taskmanager运行一段时间pod就会error,报错日志是然后jobmanager中没有报错,只是有拒绝的提示这个报错也是Flink TaskManager 在向 ResourceManager 注册中间发生的错误。我前面刚刚排查了一个问题。

2025-04-27 00:30:00 143

原创 【kafka】No valid credentials provided Mechanism level: Clock skew too great AUTHENTICATION_FAILED

具体的详情报错如下这个错误表明在 Kafka 客户端应用程序中存在身份验证问题。错误涉及到 Java Security API 和 Simple Authentication and Security Layer (SASL) 机制,具体提到了一个 GSSException,其消息为 “No valid credentials provided” 和 “Clock skew too great”。:在身份验证过程中 SASL 机制遇到错误时抛出的异常。

2025-04-27 00:15:00 37

原创 【linux】linux报错bash: [[: command not found

如果出现错误,比如 bash: [[: command not found,那么你的 shell 可能不支持 [[ …因此,整个代码块的作用是检查变量 $x 是否以 “tag” 开头,如果是的话,就提取出 “tag=” 后的内容并存储到变量 tag 中。请注意,如果你的脚本需要在不同的 shell 中运行,最好使用兼容性更好的 [ …这段代码将检查是否定义了 $BASH_VERSION 变量,如果定义了,则说明当前环境是 Bash,并支持 [[ …] 条件表达式,或者确保你的脚本在 Bash 中执行。

2025-04-26 00:30:00 30

原创 【Nacos】Nacos注册报错NacosException: user not found

然后我转移到有错的命名空间启动发现就不行,然后后来偶然查看到界面上已经有了我们的服务,并且我们的服务挂了之后这个还在,而且最关键的是触发保护阈值这里只有我们是true,其他的都是false。后面我们用其他服务连接这个nacos,发现可以正常的注册上去,但是就是我们的不行。但是我又想别人的服务为啥关掉之后,就消失了,然后我这个服务就一直没有消失呢?然后我使用其他命名空间的时候发现就可以了,然后换回来就不行。不清楚这个脏数据怎么产生的,后面我们全部换了一个命名空间就好了。然后我就看我们正常的会是什么样子?

2025-04-26 00:15:00 388

原创 【Flink】Flink常见故障排查

现在 Flink 中 Checkpoint 有两种模式,全量 Checkpoint 和增量 Checkpoint,其中全量 Checkpoint 会把当前的state 全部备份一次到持久化存储,而增量Checkpoint,则只备份上一次Checkpoint 中不存在的state,因此增量 Checkpoint 每次上传的内容会相对更好,在速度上会有更大的优势。对于 RocksDB 来说,则需要从本地读取文件,写入到远程的持久化存储上,所以不仅需要考虑网络的瓶颈,还需要考虑本地磁密的性能。

2025-04-25 00:30:00 47

原创 【Flink】Flink细粒度滑动窗口优化

1. 细粒度滑动的影响当使用细粒度的滑动窗口 (窗口长度远远大于滑动步长)时,重叠的窗口过多,一个数据会属于多个窗口,性能会急剧下降。比如我们开了一天的窗口,滑动时间是1分钟,那么数据会有多少次重复呢?重复次数的计算是长度/ 步长。而且flink是每次回计算这个数据属于某个窗口,如果这个数据属于多个窗口中,那么这个数据会被放到多个状态中。在Spark中是有这样的优化的,比如如上图的重复,那么A窗口会正常计算,但是B窗口的计算是重叠的部分是会重复利用的。但是Flink目前没有办法做这个优化。

2025-04-25 00:15:00 264

原创 【Flink】Flink 链路延迟测量

对对于实时的流式处理系统来说,我们需要关注数据输入、计算和输出的及时性,所以处理延迟是一个比较重要的监控指标,特别是在数据量大或者软硬件条件不佳的环境下。Flink提供了开箱即用的 LatencyMarker 机制来测量链路延迟。single:每个算子单独统计延迟;这个就是统计一个算子的验证,比如从A进入到A出去,这个一般没有多大意义。operator(默认值):每个下游算子都统计自己与 Source 算子之间的延迟;相当于全局延迟,是比较有用的。subtask。

2025-04-24 00:30:00 37

原创 【Flink】Flink开发习惯-算子指定UUID

默认情况下,算子UID 是根据JobGraph 自动生成的,JobGraph 的更改可能会导致UUID 改变,手动指定算子UUID,可以让Flink 有效地将算子的状态从 savepoint 映射到作业修改后(拓扑图可能也有改变)的正确的算子上。严格地说,仅需要给有状态的算子设置就足的了。但是因为 Flink 的某些内置算子(如window)是有状态的,而有些是无状态的,可能用户不是很清楚哪些内置算子是有状态的,哪些不是所以从实践经验上来说,我们建议每个算子都指定上 UUID。

2025-04-24 00:15:00 29

原创 【Flink】Flink RocksDB 大状态调优

【Flink】Flink RocksDB 预定义优化合集。

2025-04-23 00:45:00 245

原创 【Flink】Flink RocksDB 预定义优化合集

RocksDB的参数有几百个,如果是没有一定基础的想做这个优化还是很难的,因此flink提供了一些预定义的配置合集,并且每个合集有固定的名称。Flink 针对不同的设置为 RocksDB 提供了一些预定义的选项集合,其中包含了后续提到的一些参数,如果调整预定义选项后还达不到预期,再去调整后面的 block、writebuffer等参数。

2025-04-23 00:30:00 22

原创 【Flink】Flink如何开始state性能监控

Flink 1.13 State 访问的性能监控,即latency trackig state。此功能不局限于 State Backend 的类型,自定义实现的 State Backend 也可以复用此功能。正常开启第一个参数即可。

2025-04-19 22:14:37 33

原创 【Flink】Flink合理设置并行度、并行度怎么设置

这个跟上个问题一样,并没有统一的设置,要看实际情况自行设置。

2025-04-19 22:14:23 154 1

原创 【Flink】Flink合理使用CPU资源、CPU资源怎么设置

那么按照我们现在的情况,我们一个taskmanager有2个槽位,那么应该是需要2个vcore。其实这是调度器引起的问题,我们要么使用容量调度器,要么使用公平调度器,如果你使用的是公平调度器那么应该不会遇到这个问题。然后现在就变成了4和10了,现在我们算一算这个怎么来的,3个TaskManager,每个占用3个,那么就是9个,然后JobManager是一个。我并行度是5,那么最少占用5个槽位才能跑,一个taskmanager是2个槽位,那么最少要启动3个taskmanager才能满足我们的需求。

2025-04-12 09:32:10 50

原创 【Flink】Flink TaskManager 内存如何计算、TaskManager每个部分的内存怎么计算

距离上一次搞内存已经很久了,今天打算再次学一下。Flink 1.10对 Task Manager 内存模型做了较大改动Flink使用了堆上内存和堆外内存框架堆外内存、Task堆外内存、网络缓冲内存,都在堆外的直接内存里Flink使用内存=框架堆内和堆外内存+Task堆内和堆外内存 +网络缓冲内存+管理内存逃程内存=Flink内存+JVM特有内存首先要知道一点就是FLink是既能使用堆内存、又能使用堆外内存的。

2025-04-06 13:18:29 348

原创 【Flink】Flink Key State 和 Operator State 区别

在Flink 当中有两种基本类型的State : Keyed State 和 Operator State。Keyed State:顾名思义就是基于 KeyedStream 上的状态,这个状态是跟特定的key 鄉定的,对 KeyedStream 流上的每一个key,都对应一个 state。如下图所示:假如输入流按照 id 为key 进行 keyBy 分组,形成一个 KeyedStream,数据流中所有id 为1的数据共享一个状态,可以访问和更新这个状态。以此类推,每个key 对应一个自己的状态。

2025-04-06 13:18:09 29

原创 【Flink】Flink 1.17 可查询状态 Queryable State

今天有空来学习一下,可查询状态 Queryable State。在flink 当中.state 分为两种类型,keyed state 和 operator state。keyed state 是与特定的key 绑定的state。对keyedStream 流上的每一个key, 都对应一个 state;operator state 是与算子绑定的 state,整个operator 算子只对应一个 state。

2025-04-03 00:30:00 53

原创 【kafka】Kafka修改topic的日志保留时间

message.timestamp.difference.max.ms=9223372036854775807: 定义了消息时间戳之间的最大差异,这里是没有限制。min.compaction.lag.ms=0: 定义了触发日志紧凑(compaction)的最小延迟时间,这里是0毫秒。segment.index.bytes=10485760: 定义了每个日志段的索引文件的大小,这里是10 MB。file.delete.delay.ms=60000: 定义了删除文件的延迟时间,这里是60秒。

2025-04-03 00:15:00 243

原创 【Flink】Flink执行savepointPath超时

其中, 是作业的 JobID,可以在 Flink 的 Web UI 或者日志中找到, 是 Savepoint 保存的目录。当执行 Flink 的 stop 命令并指定 --savepointPath 参数时,如果操作超时,可能是由于不同原因导致的。8.检查 Flink 的日志,特别是 JobManager 和 TaskManager 的日志,以查看是否有任何与 Savepoint 相关的错误或警告消息。有时,不同版本之间的兼容性问题可能导致异常。

2025-04-02 00:30:00 43

原创 【Flink】Flink on k8s Exception occurred while acquiring lock ‘ConfigMapLock‘

flink on k8s吗,我在kubernetes application模式下运行,运行一段时间后就会出现这个报错,然后jobmanager就重启了。2、确保你的操作是基于最新版本的 ConfigMap 进行的,可以使用 kubectl get configmap 命令查看当前版本。这是一个 Kubernetes 的错误消息,意思是在进行 ConfigMap 操作时发生了锁定问题和版本冲突。4、对于持久性锁定问题,可以通过更新或重新部署相关的应用程序来解决。

2025-04-02 00:15:00 148

原创 【IDEA】IDEA总是自动切换有错误的pom文件

是这样的,我们环境最近使用jdk 17,然后下载了最新的IDEA 2023.03月份的,但是这个用的时候发现我正在修改其他pom文件的时候,总是时不时打断我,自动切换到父的pom文件,关键是这个pom文件其实没有什么报错,但是每次切换过去的时候,

2025-03-28 00:30:00 173 1

原创 【IDEA】IDEA修改Target bytecode version、maven重新加载后Target bytecode version总是变回1.8

我们环境最近在从jdk 17 升级到jdk17,但是maven重新加载后Target bytecode version总是变回17。那么IDEA修改Target bytecode version?让他保持一致呢?在Maven中,可以通过配置pom.xml文件来指定目标字节码版本。首先,打开项目的pom.xml文件。然后,在元素下添加如下内容:

2025-03-28 00:15:00 121

原创 【Maven】IDEA target目录 surefire/surefirebooter400xxx.jar 无法删除问题

在 Maven 项目中,surefirebooter 是 Maven Surefire 插件用于运行单元测试的引导器。生成的 surefirebooter JAR 文件包含了运行测试所需的类和资源,以及与 Surefire 插件相关的代码和配置。surefirebooter JAR 文件通常位于项目的 target 目录下的 surefire 子目录中。IDEA target目录下编译的时候生成一个文件surefire/surefirebooter400xxx.jar 这个文件有什么作用?

2025-03-26 00:30:00 65

原创 【Maven】Fatal error compiling: 无效的目标发行版: 11 解决方案

至此发现错误原因,原来执行java -version默认使用系统环境变量JAVA_HOME,而maven优先使用了windows的用户变量JAVA_HOME(这里之前忘记修改,仍然指向java8路径),修改用户变量JAVA_HOME指向java11或删除该用户变量JAVA_HOME(如无它用)后即可。我的pom文件设置如下。

2025-03-26 00:15:00 239

原创 【Idea】Idea如何修改Debug运行的默认JDK版本、如何修改Debug模板

但是有没有思考,我们项目都改成jdk 17了。这里为什么还是jdk 1.8呢?这是因为debug模板的问题。在上一篇文章中,我们最后找到原因是Debug的时候设置的JDK问题。我们改成如下模板就好了,下次就不是默认的jdk 8了。最后我们改成如下才解决。

2025-03-23 00:30:00 193

原创 【maven】windows安装两套jdk、idea运行报错 Runtime only recognizes class file versions up to 52.0

我们环境现在处于升级阶段,我们既要运行老的jdk 17版本,也要使用老的jdk1.8版本,为此我特意在本地安装了2套jdk环境,而且安装了2个IDEA,然后一套使用jdk 1.8 ,一套使用jdk 17,但是运行报错。我的jdk 1.7 环境装机如下,jdk 17 装机的时候使用的是msi包,好像不需要设置环境变量。这次我是解决后复现这个问题,再次查看版本信息以前全是jdk 17,现在javap的环境变了,奇怪。如果大家遇到同样的问题,那么Jdk的设置可以按照我的去设置能减少很大的问题。

2025-03-23 00:15:00 80

原创 【Kafka】java消费kafka报错UnsatisfiedLinkError、tmp/snappy-1.1.7、libsnappyjava.so

解决这个问题的一种方法是确保你的系统上有符合要求的libstdc++.so.6版本。你可以使用系统包管理工具来安装它,具体的命令可能因你使用的Linux发行版而异。在Linux系统中,libstdc++.so.6是C++标准库的共享对象文件,而GLIBCXX_3.4.21是其特定版本。这可能是由于库的版本不匹配导致的问题。另外,你也可以考虑使用更新版本的snappy-java库,因为新版本可能解决了这种依赖关系问题。确保你使用的snappy-java版本与你的应用和系统兼容。现在升级到最新版本试试。

2025-03-22 00:30:00 45

原创 【Flink】Flink不消费数据、偶然消费数据、消费组信息查不到

一个环境flink读取kafka不消费数据或者偶然消费数据、消费组信息查不到。在数据源节点查看节点每秒消费速率为0,意味着没有消费数据查看topic内部topic都正常,下图为部分查看我们消费的目标topic也是正常的查看消费组信息最后一行为nuknow,这是我们自定义的,意思是查不到查看日志发现无报错信息给这个流新换一个消费组,因为不消费所以没有初始化消费组信息,我们也查不到但是后来不知道什么原因,偶然能消费数据了。

2025-03-22 00:15:00 69

hadoop 2.x 版本概要讲解,HA搭建指南

hadoop 2.x 版本概要讲解,HA搭建指南

2024-06-24

Eclipse Formatter 模板 Formatter.xml

Formatter模板设置好后,保存时可自动格式化代码。代码的空格处理,写的时候不用再担心格式问题。设置保存时,仅保存编辑的行,这样不会更新其他行的代码,提交代码时,也是只变更自己编辑的行。

2020-11-11

Drools-复杂事件处理

drools复杂事件处理,详细说明文档。一些语法的详细解析

2018-09-30

excel操作包

excel导入到数据库的工具包

2017-02-20

eclipse的hadoop插件

2016-09-14

hadoop学习文档

2016-09-14

hadoop单结点

hadoop单结点

2016-06-16

hadoop单结点配置

hadoop单结点配置,根据官网配置的实验

2016-06-16

native_32位

Hadoop配置需要的32位 native_32位

2016-06-16

s2sh整合配置,非常适合初学者,明白配置流程

非常适合初学者掌握ssh2整合的例子,献给初学者

2015-12-18

打飞机代码

一个打飞机游戏代码,全java写的,能实现打飞机的基本功能

2015-08-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除