自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 收藏
  • 关注

原创 【Flink】Flink 作业执行大致流程

下游任务这时是正常处理上游发送过来的数据的,但是上游正在进行 Checkpoint,数据也是被发送过来的 CheckpointBarrier 分割开了,处理到后面会接收到上游的 CheckpointBarrier,也就表示着当前 Checkpoint 上游快照数据已经处理完,下游也开始进行 Checkpoint 了,下游进行 Checkpoint 的过程也是和上面的一样,继续调用 SubtaskCheckpointCoordinatorImpl 开始进行 Checkpoint。

2024-12-03 21:15:00 1416

原创 【Flink】Flink Checkpoint 流程解析

任务运行后 JobMaster 定时执行 Checkpoint,JobMaster 会通过调用 CheckpointCoordinator 对作业进行 Checkpoint。CheckpointCoordinator 开始进行 Checkpoint,它首先会先创建 PendingCheckpoint,然后开始给 Checkpoint 计时,再关闭网关开始触发 OperatorCoordinator 的 Checkpoint。

2024-12-03 15:27:57 1337

原创 【Flink】快速理解 FlinkCDC 2.0 原理

这里从 Mysql binlog CDC 简单流程来了解 Flink CDC 原理,将 CDC 流程分成了简单的六个阶段,通过这六个阶段应该可以大致了解 CDC 原理。

2024-11-26 08:33:39 1338

原创 【Ubuntu】Ubuntu启动后第一次需要很久才能启动GTK应用问题

自从升级了 Ubuntu 之后,设备重启,发现打开 Terminal 、Nautilus 以及其他的GTK 应用都很慢,需要至少一分钟的时间启动。Failed to start xdg-desktop-portal.service - Portal service.

2024-10-01 12:49:08 844

原创 【Java】Java 安全认证和 Hadoop UGI 原理解析

一般来说,Java 安全认证主要通过自定义 Subject、LoginContext、LoginModule、Configuration 在 Java 中进行安全认证。

2024-09-24 23:39:26 1408

原创 【Flink】Flink 高可用原理

Flink JobManager 高可用 加强了 Flink 集群防止 JobManager 故障的能力。 此特性确保了 Flink 集群将始终持续执行你提交的作业。

2024-09-24 19:18:27 1067

原创 【Flink】Flink 本地启动的多种方式

MiniCluster在start方法中启动QueryService、RPCService、Zookeeper、BlobServer、TaskManager、DispatcherLeader、ResourceManager、DispatcherGateway、WebMonitor进行RPC通信。RestServerEndpoint在执行start()方法时注册Netty的ChannelHandler,可以通过WebMonitorEndpoint查看具体的Handler类型和实现。

2024-09-23 19:45:00 1413

原创 【Flink】Flink Task 日志文件隔离

任务在启动时会先通过 MdcUtils 启动一个 slf4j 的 MDC 环境,然后将 jobId 添加到 slf4j 的 MDC 容器中,随后任务输出的日志都将附带 joid。

2024-09-22 19:38:20 908

原创 【Hive】HiveServer2 启动时 datanucleus.schema.autoCreateTables 不生效的问题

HiveServer2 启动时出现 "Either your MetaData is incorrect, or you need to enable "datanucleus.schema.autoCreateTables",而datanucleus.schema.autoCreateTables不生效

2024-09-09 00:15:10 801 2

原创 【Hive】Hive 本地启动时报错 Persistence Manager has been closed

解决办法是将 ObjectStore 类中静态变量 forTwoMetastoreTesting 为 true

2024-09-07 17:51:15 1058

原创 【Kerberos】学习Kerberos

用户要去游乐场,首先要在门口检查用户的身份(即 CHECK 用户的 ID 和 PASS), 如果用户通过验证,游乐场的门卫 (AS) 即提供给用户一张门卡 (TGT)。这张卡片的用处就是告诉游乐场的各个场所,用户是通过正门进来,而不是后门偷爬进来的,并且也是获取进入场所一把钥匙。现在用户有张卡,但是这对用户来不重要,因为用户来游乐场不是为了拿这张卡的而是为了游览游乐项目,这时用户摩天楼,并想游玩。

2024-09-01 22:15:00 1423

原创 【Hive】Hive出现BigDecimal wourld overflow supported range问题

hbase shell插入的基础类型数据通过bigdecimal查看数据位数可以看到数据位数变得很大。问题在于BigDecimal设置的精度太小或太大了,例如2^32 - 1或者-2^32。而且如果scale很大的话,就就算没有报错,计算也需要耗费很长的时间。真正的bigDecimal数据正常状态下查看是会乱码的。Jdk17计算后大于MAX_MAG_LENGTH报错。测试jdk11直接大于MAX_VALUE报错。这个问题也和使用的jdk版本也有关系。怀疑是插入了类似数据导致了这个问题。

2024-09-01 07:30:00 306

原创 不想再搬砖了!我给火爆全网的砖了个砖做了个辅助工具!!

但是倔强的我怎么能会因为这点事就退缩了呢,于是我花了一点时间学习了一下简单的图像识别,以及设计了一个简单的算法,接下来就有了下面的辅助工具!但是由于越玩到后面难度越大,还有体力最高只有一格,且一格体力居然几个小时才能恢复,着实劝退了不少人。我花了一个小时的时间,才好不容把第二关通过了,中间还邀请朋友帮忙才通过的。然后呢,我根据规则设计了一个简单的算法,算法的的步骤就不多说了。继羊了个羊之后,又一款小游戏火了起来,那就是《砖了个砖》!参数,依次设置为图片地址,图片中方块的行数和列数。搬砖还是得讲究效率!

2024-08-30 20:00:00 1737 9

原创 【Hadoop】Hadoop和Yarn故障切换高可用原理

通常调用Yarn和Hadoop的客户端api时都会经过他们的一层代理类,每次调用代理类方法失败时会进行重试或者故障转移,代理类的创建是通过创建的,例如RMProxy、ServerProxy、NameNodeProxies都会通过它创建相应的客户端代理。下面主要解析一下YarnClient使用的RMProxy(默认Hadoop2):创建RMProxy创建故障切换代理供应者FailoverProxyProvider,默认为ConfiguredRMFailoverProxyProvider,用于出现故障时切换节点

2024-08-30 18:15:00 906

原创 【Hive】通过写文件方式写入 Hive 数据

Hive最简单的写入数据方式就是通过Hive Jdbc写入Hive数据,但这并不是写入Hive最高效的方法。Hive通过读取相关Hdfs的文件来获取数据信息,而通过直接写入Hdfs文件数据达到写入Hive数据的效果,这是目前最高效的方法

2024-08-28 23:02:02 1366

原创 【Yarn】NodeManager本地缓存源码解析

NodeManager本地缓存中资源有三种可见度:PUBLIC、PRIVATE、APPLICATION,每种可见度都需要不同的处理PUBLIC:全局共享缓存,资源存放在 ${yarn.nodemanager.local-dirs}/filecache/ 目录下PRIVATE:对应用户级别共享资源,资源存放在yarnnodemanagerlocal−dirsusercache{user}/filecache/ 目录下。

2024-08-28 22:48:31 1155

原创 【Yarn】YarnClient发送和接收请求源码解析

其中Hadoop和Yarn组件大部分是通过Protobuf(Protocol Buffers)协议进行通信。Protobuf 是一种由 Google 开发的二进制序列化格式和相关的技术,它用于高效地序列化和反序列化结构化数据,通常用于网络通信、数据存储等场景。

2024-08-28 22:42:19 1129

原创 【Flink】Flink内存调优

基于 JVM 内存存在一些问题,并且在大数据场景下,无法在内存中存储海量数据,计算效率无法提高。Flink 社区采用自主内存管理设计,设计了两种内存模型 JobManager 内存模型和 TaskManager 内存模型。

2024-08-24 10:02:23 2173

原创 【Yarn】Mac Hadoop Yarn日志聚合出错

目录下应该就可以看见Hadoop-2.7.3目录,也就是hadoop应用程序了,可以通过判断启动hadoop任意组件是否会发出没有加载native库警告来判断是否生效(注意:通过hadoop checknative -a仍会报错,因为brew上面的库还是无法加载到,但是不影响hadoop启动时加载native库)由于hadoop没有提供mac平台上的包,所以如果我们想要在mac上使用hadoop的native库,那么就只能通过手动构建hadoop了。简单思考是没有加载到Hadoop的native库导致的。

2024-02-11 11:55:36 652

原创 【Idea】Idea 中markdown文件无法预览问题

Idea 中markdown文件无法预览问题

2023-03-25 22:49:13 4880

原创 【Java】Java NIO和BIO比较

学过计算机组成原理就知道在IO系统中直接内存访问DMA方式相比程序中断方式访问方式,进一步提高了CPU利用率,这里从Java程序通过对读写一个文件来进行一个验证。

2023-03-02 15:49:57 354

原创 【Gradle】Gradle如何排除依赖项目的某些包

在开发一个Gradle相关项目时,遇到了Gradle如何排除依赖项目的某些包这个问题,网上也并不能找到相关问题的解决方案,这就让我需要我仔细阅读官方文档相关部分了。

2022-12-30 18:27:00 10025

原创 【SSL】数字签名是什么?公钥和私钥是什么

数字签名是什么?公钥和私钥是什么

2022-12-30 17:59:00 2224

原创 【Gradle】记录Gradle中Checkstyle和Spotbugs的使用

Checkstyle 是一个开发工具,用于帮助程序员编写符合编码标准的 Java 代码。它自动化了检查 Java 代码的过程,使人们免于承担这项枯燥(但重要)的任务。这使得它成为希望实施编码标准的项目的理想选择。SpotBugs 是一个在 Java 程序中发现 bug 的程序。它寻找“ bug 模式”的实例ーー可能是错误的代码实例。

2022-12-30 16:29:27 1695

原创 【Ubuntu】Ubuntu 修改应用默认启动

默认启动方式配置文件位置:/etc/gnome/defaults.list~/.local/share/applications/mimeapps.list~/.config/mimeapps.list修改~/.config/mimeapps.list文件:打开网盘客户端后:关掉重新打开:没错,网盘只修改第一条配置,第二条会覆盖第一条。

2022-12-30 11:29:49 601

原创 RESTFUL Api学习

RESTFUL Api学习

2022-12-30 11:27:42 144

原创 SpringBoot Validator使用

SpringBoot Validator使用

2022-12-30 11:23:40 573

原创 Shell教程

Shell 脚本(shell script),是一种为 shell 编写的脚本程序。

2022-12-30 11:10:53 465

原创 认识PWA(渐进式网页引用)

渐进式 Web 应用程序(PWAs)是使用现代 API 构建和增强的 Web 应用程序,以提供增强的功能、可靠性和可安装性,同时通过单个代码库访问任何人、任何地点、任何设备。

2022-12-30 11:08:58 439

原创 GitHub Actions入门教程

GitHub Actions 是一个持续集成和持续交付(CI/CD)平台,允许您自动化构建、测试和部署流水线。您可以创建工作流来构建和测试存储库中的每个请求,或者将合并的请求部署到生产环境中。

2022-12-30 11:05:00 2284

原创 Husky入门教程

使用Husky,编写脚本,在代码提交之前,自动对代码进行格式化、优化、自定义。

2022-11-13 16:02:40 4739 2

原创 mybatis-generator如何从环境变量中使用数据库密码

mybatis-generator如何从环境变量中使用数据库密码(使用gradle)

2022-08-31 23:10:27 700

原创 Gradle入门

Gradle入门

2022-08-31 10:07:25 1768

原创 Linux下在调试JVM虚拟机时遇到的问题

Linux下在调试JVM虚拟机时遇到的问题

2022-08-15 15:04:49 1980

原创 前端如何将两个分离项目合并发布到一个端口

前端如何将两个分离项目合并发布到一个端口

2022-07-27 10:00:29 1819

原创 个人使用linux软件分享

个人linux软件分享

2022-07-26 20:24:39 2926

原创 Springdoc、OpenApi如何编写multipart/form-data、文件上传接口

Springdoc、OpenApi如何编写multipart/form-data、文件上传接口

2022-07-13 16:52:00 5715 3

原创 ubuntu “could not store password an apparmor policy mysql workbench” Code Answer

ubuntu “could not store password an apparmor policy mysql workbench” Code Answer

2022-06-15 08:49:32 864

原创 默认SpringSecurity大致启动流程源码分析

默认SpringSecurity大致启动流程源码分析

2022-05-05 10:05:12 691

原创 Security Filters顺序

Security Filters顺序​ Security Filter通过SecurityFilterChain 被插入到FilterChainProxy中。过滤器的顺序很重要,但通常不需要知道Spring Security过滤器的顺序。然而,有些时候,知道顺序是有益的。你可以通过FilterOrderRegistration查看过滤器的顺序FilterOrderRegistration.javaFilterOrderRegistration() { Step order = new S

2022-05-04 17:00:59 724

空空如也

空空如也

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

TA关注的人

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