自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

张伯毅的专栏

知者不惑,仁者不忧,勇者不惧.

  • 博客(637)
  • 资源 (13)
  • 收藏
  • 关注

原创 Flink 1.12.2 源码浅析 : 目录汇总 [持续更新中....]

Flink 1.12.2 源码浅析 : 环境准备Flink 1.12.2 源码浅析 : 本地DEBUG环境准备Flink 1.12.2 源码浅析 : 相关启动脚本Flink 1.12.2 源码浅析 : yarn-per-job模式解析 [一]Flink 1.12.2 源码浅析 : yarn-per-job模式解析 [二]Flink 1.12.2 源码浅析 : yarn-per-job模式解析 [三]Flink 1.12.2 源码浅析 : yarn-per-job模式解析 [四]Flink 1.

2021-04-16 01:26:54 1328 1

原创 Kerberos 安装&使用

.一 .前言二 .搭建Kerberos Server2.1.使用 yum 安装Kerberos Server的套件2.2. 配置 /etc/krb5.conf2.3. 配置 /var/kerberos/krb5kdc/kdc.conf2.4. 配置 /var/kerberos/krb5kdc/kadm5.acl2.5. 初始化Kerberos的数据库2.6. xxx三 .xxxxxx3.1. xxx3.2. xxx3.3. xxx3.4. xxx3.5. xxx3.6. xxx四 .xxxxxx4.1. x

2021-03-27 01:03:42 2520 3

原创 Flink 从1.7 到1.12版本升级汇总

-------------------------一 .前言二 .Flink 1.7 版本2.1. Flink中的Scala 2.12支持2.2. 状态变化2.3. Exactly-once语义的S3 StreamingFileSink2.4. Streaming SQL中支持MATCH_RECOGNIZE2.5. Streaming SQL中的 Temporal Tables 和 Temporal Joins2.6. 版本化REST API2.7. Kafka 2.0 Connector2.8.

2021-02-18 19:51:41 2932

原创 Spark2.3.2源码解析 [目录]

Spark基础知识详解Spark2.1 内存管理详解Spark2.3.2源码分析:1.代码阅读环境准备Spark2.3.2源码解析: 2.启动master节点流程源码分析Spark2.3.2源码解析: 3.启动worker节点启动流程源码分析Spark2.3.2源码解析: 4.1.Yarn cluster 模式 SparkSubmit源码分析(一)Spark2.3.2源码解析: 4.2.Yarn cluster 模式 SparkSubmit源码分析(二)ApplicationMasterSpa

2021-01-12 20:32:47 2184

原创 Hadoop3.2.x YARN源码分析目录汇总 [持续更新中....]

Hadoop3.2.x YARN源码分析目录汇总如下:Hadoop3.2.1 【 YARN 】源码分析 : RPC通讯解析Hadoop3.2.1 【 YARN 】源码分析 : ResourceManager 浅析Hadoop3.2.1 【 YARN 】源码分析 : ClientRMService 浅析Hadoop3.2.1 【 YARN 】源码分析 : AdminService 浅析Hadoop3.2.1 【 YARN 】源码分析 : ApplicationMaster 浅析Hadoop3.2

2020-12-28 09:26:38 1256

原创 为什么HDFS文件块(block)大小设定为128M解析.

Table of Contents一.前言二. block 大小设置原则:最小化寻址开销,减少网络传输.三、为什么HDFS中块(block)不能设置太大,也不能设置太小?四、 HDFS中块(block)的大小为什么设置为128M?一.前言HDFS中存储数据是以块(block,这只是一个逻辑概念)的形式存储在DataNode,block大小可通过设置HADOOP_HOME/etc/hadoop/hdfs-site.xml中dfs.blocksize实现(设置时先stop集群,修改.

2020-10-11 23:42:31 9490 10

原创 Hadoop3.2.x HDFS源码分析目录汇总 [完结]

Hadoop3.2.0 源码编译 [一]MAC版本: Hadoop3.2.0 源码编译 [ 二 ]Hadoop3.2.0 源码分析: SHELL启动脚本 DEBUG 模式Hadoop3.2.0 源码分析: namenode 启动Hadoop3.2.0 源码分析: datanode 启动Hadoop3.2.0 源码分析: ResourceManager启动Hadoop3.2.0 源码分析: NodeManagerHadoop3.2.0 源码分析: Container 之...

2020-09-27 09:28:38 11277 1

原创 [JVM]了断局: [ 目录 ]

[JVM]了断局: 说什么也没用,背就完了[必背][JVM]了断局: “运行时数据区“理论梳理[JVM]了断局: 类文件结构梳理[JVM]了断局: JDK默认配置.[JVM]了断局: G1 入门[JVM]了断局: 类加载机制原图:https://www.processon.com/view/5cff6c05e4b0a65d8095d130未完,待补充................

2020-08-24 21:09:07 9839

原创 Hadoop3.2.1 RPC通讯 一锅端

下面是最近整理的关于Hadoop3.2.1 RPC 的通讯文章汇总,以及我最后画的一张从Client端请求到Server端的流程图.有什么不对的地方,欢迎指正...Hadoop3.2.1 【 HDFS 】源码分析 : RPC实现 [一] proto接口协议Hadoop3.2.1 【 HDFS 】源码分析 : RPC实现 [二] 概述&使用Hadoop3.2.1 【 HDFS 】源码分析 : RPC原理 [三] 概述&原理Hadoop3.2.1 【 HDFS 】源...

2020-06-21 23:08:28 10925

原创 基准测试神器 - JMH [ Java Microbenchmark Harness ]

一. 简介JMH,全称 Java Microbenchmark Harness (微基准测试框架),是专门用于Java代码微基准测试的一套测试工具API,是由 OpenJDK/Oracle官方发布的工具。其精度可以达到毫秒级.可以执行一个函数需要多少时间,或者一个算法有多种不同实现等情况下,选择一个性能最好的那个.Java的基准测试需要注意的几个点:测试前需要预热...

2020-05-06 15:24:42 3292 3

原创 CentOS7.6 万兆网卡性能测试.

Table of Contents一. 物理机&软件:二.网卡信息三. 安装netperf四. 开启多队列功能五. 测试六. 查看结果七.总结最终结果极限 万兆网卡: 网络吞吐量 大约为9409.58Mbit/s ≈1176M/s本文章主要是为了测试万兆网卡的传输速率.一. 物理机&软件:1.两台装有万兆网卡的物理机, ...

2020-04-22 15:51:43 17564

原创 蹭1024徽章专用贴

蹭1024徽章专用贴蹭1024徽章专用贴蹭1024徽章专用贴

2022-10-24 13:54:25 29

原创 使用 kubeadm 部署 kubernetes

使用 kubeadm 部署 kubernetes

2022-09-28 12:18:54 136

原创 docker安装 elasticsearch

docker安装 elasticsearch

2022-07-06 23:45:00 262

原创 使用Java API 操作 Kudu 测试用例

使用Java API 操作 Kudu 测试用例

2022-07-04 23:45:00 120

原创 Mysql 查询锁表指令速查

Mysql 查询锁表指令速查

2022-06-25 20:15:00 437

原创 JAVA 如何使用java指令解压jar包.

java 解压~

2022-06-23 23:45:00 986

原创 Java synchronized锁 String 和 Integer 会有什么问题?

java synchronized 锁String , Integer 对象...

2022-06-21 23:45:00 316 1

原创 Postman设置请求cookie

postman 设置请求cooke信息

2022-04-30 23:45:00 2819

原创 使用archas确定线上环境是否缺少jar包.

一. 背景 线上环境发送kakfa消息的时候, 报错:org.apache.kafka.common.KafkaException: java.lang.NoClassDefFoundError: Could not initialize class org.apache.kafka.common.record.CompressionType$SnappyConstructors at org.apache.kafka.common.record.CompressionType$3.w

2022-04-26 00:00:00 174 1

原创 NoClassDefFoundError: Could not initialize class org.apache.kafka.common.record.Compressio

一. 问题报错信息org.apache.kafka.common.KafkaException: java.lang.NoClassDefFoundError: Could not initialize class org.apache.kafka.common.record.CompressionType$SnappyConstructors at org.apache.kafka.common.record.CompressionType$3.wrapForOutput(Com

2022-04-21 00:00:00 2305

原创 Mysql 连接报错 Table ‘performance_schema.session_variables‘ doesn‘t exist

一. 报错信息2022-02-23 10:58:56,849 [4126] - ERROR [main:DBAccessorImpl@117] - Error while creating database accessorcom.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'performance_schema.session_variables' doesn't exist at sun.reflect.Generat

2022-02-23 23:30:00 252

原创 Mysql 更改用户名密码

一. 前言最近要重置mysql密码, 记录一下.二. 方案一关闭正在运行的MySQLservice mysqld stop-------或者------systemctl stop mysqld启动MySQL的安全模式,命令如下:mysqld_safe --skip-grant-tables &完成以后就可以不用密码进入MySQL了mysql -u root -p修改密码use mysqlupdate mysql.user set aut

2022-02-23 23:15:00 1597

原创 Kubectl连接k8s集群

一. 概述需要使用kubectl连接多个k8s集群, 所以在这里做一个记录.二.

2022-02-09 23:30:00 2514 1

原创 MYSQL的分区表创建示例

MYSQL的分区字段,必须包含在主键字段内。存在问题,如果按照create_time日期建立索引, 需要在唯一索引里面也要包含这个字段. 因为create_time会变,会导致唯一索引失效.如果是在程序中做唯一验证,在并发情况下,会导致唯一索引失效.建分区表SQL示例如下, 使用create_time作为分区字段.use test ;DROP TABLE IF EXISTS `t_user`;CREATE TABLE `t_user`( `id` big

2022-02-08 23:00:00 1664

原创 FileZilla通过ssh key连接服务器

一. 背景需要去服务器拿文件, 突然发现是采用秘钥登录的. 所以记录一下如何用FileZilla 登录.二. 操作.2.1. 文件 -> 站点管理2.2. 新建站点2.3. 输入连接信息 : 协议/主机/端口/登录类型/用户/秘钥文件 —> 点击连接登录....

2022-01-17 22:00:00 1026

原创 SSH登录 禁用传递语言环境到服务器.

一. 问题描述ssh指令登录服务器的时候,默认会将本地的 $LANG 环境变量传递到服务端, 这样在服务器端执行一些指令的时候,会导致环境中的语言变为中文. 比如执行java指令, 在java中获取日期函数的时候, 星期会变为中文,这样程序如果有对星期做处理的话, 就会获得中文的"星期五" . 程序处理的时候就可能报错…本地环境BoYi-Pro:~ sysadmin$ echo ${LANG}zh_CN.UTF-8服务器正常环境 : en_US.UTF-8root@master01

2021-11-17 20:41:01 916

原创 Open JDK 8.0_152-b16 崩溃 : [libzip.so+0x12522] newEntry+0x62

一. 问题描述在执行spark任务的时候, JVM崩溃. 崩溃dump日志:## A fatal error has been detected by the Java Runtime Environment:## SIGBUS (0x7) at pc=0x00007f9adacb9522, pid=107874, tid=0x00007f9add417700## JRE version: Java(TM) SE Runtime Environment (8.0_152-b16) (buil

2021-11-15 23:36:40 1650

原创 蹭1024徽章专用帖

蹭徽章专用贴

2021-10-24 00:49:24 124

原创 K8S 之 Pod定义梳理

一. 前言Pod是Kubernetes中能够创建和部署的最小单元,是Kubernetes集群中的一个应用实例,总是部署在同一个节点Node上。Pod中包含了一个或多个容器,还包括了存储、网络等各个容器共享的资源。Pod支持多种容器环境,Docker则是最流行的容器环境。二. 配置信息Pod的配置信息中有几个重要部分,apiVersion、kind、metadata、spec以及status。其中apiVersion和kind是比较固定的,status是运行时的状态,所以最重要的就是metadat

2021-09-25 01:37:49 412

原创 GIT配置用户名&邮箱

一. 全局配置设置全局用户名 :git config --global user.name “FIRST_NAME LAST_NAME”是指全局邮箱:git config --global user.email “MY_NAME@example.com”二. 私有项目配置设置项目用户名:git config user.name “FIRST_NAME LAST_NAME”设置项目邮箱:git config user.email “MY_NAME@example.com”验

2021-08-21 19:47:34 231

原创 kubernetes 集群状态异常 [ connect: connection refused ]

获取kubectl状态有报错信息: Get “http://127.0.0.1:10251/healthz”: dial tcp 127.0.0.1:10251: connect: connection出现这种情况,是/etc/kubernetes/manifests下的kube-controller-manager.yaml和kube-scheduler.yaml设置的默认端口是0,在文件中注释掉就可以了现象[root@master01 manifests]# kubectl get csW

2021-08-21 19:46:55 1858

原创 CentOS7.x 安装make 指令

提示错误:make: command not foundmake是gcc的编译器,一定要安装 1、安装:yum -y install gcc automake autoconf libtool make2、安装g++:yum install gcc gcc-c++

2021-08-20 21:45:57 517

原创 kerberos 长连接验证

一. 前言1.1. 背景使用zookeeper进行服务的主备切换, 由于kerberos的ticket存在时间周期,为避免因为kerberos认证对业务造成不可控影响,故针对kerberos长连接的情况,开始进行验证.1.2. 概念Kerberos ticket 有两种生命周期,ticket timelife (票据生命周期) 和 renewable lifetime (可再生周期)。当 ticket lifetime 结束时,该 ticket 将不再可用。如果 renewable life

2021-07-25 06:29:17 805 2

原创 IDEA Download Sources报错java.lang.RuntimeException: Cannot reconnect.

IDEA 在下载源码的时候报错, 截图如下java.lang.RuntimeException: Cannot reconnect.解决方式:

2021-07-19 21:49:36 568 1

原创 Spark Shuffle机制-源码实现

.一 .前言二 .Shuffle Write框架设计和实现2.1. BypassMergeSortShuffleWriter2.2. UnsafeShuffleWriter2.3. SortShuffleWriter三 . 输出文件验证3.1. 通用验证代码3.1.1 验证代码3.1.2 断点入口 : org.apache.spark.scheduler.ShuffleMapTask # runTask3.2. SortShuffleWriter3.2.1 入口, 获取SortShuffleManager3

2021-07-19 21:49:02 572 6

翻译 Virtualbox 使用 Bridged Adapter(网桥模式)连接网络 (Windows操作系统)

一 . 前言网桥模式,你可以这样理解:它是通过主机网卡,架设了一条桥,直接连入到网络中了。因此,它使得虚拟机能被分配到一个网络中独立的IP,所有网络功能完全和在网络中的真实机器一样。网桥模式下的虚拟机,你把它认为是真实计算机就行了。虚拟机与主机的关系:可以相互访问,因为虚拟机在真实网络段中有独立IP,主机与虚拟机处于同一网络段中,彼此可以通过各自IP相互访问。虚拟机于网络中其他主机的关系:可以相互访问,同样因为虚拟机在真实网络段中有独立IP,虚拟机与所有网络其他主机处于同一网络段中,彼此可以通过各

2021-07-19 21:48:07 827 1

原创 Zookeeper 开启kerberos配置

一. 前言这两天需要搞一个开启kerberos的zookeeper环境用于测试. 顺手记录一下.二. 安装步骤2.1 前置环境准备JDK : jdk1.8服务器 : CentOS 7.5软件版本: zookeeper : 2.4.8前置环境: kerberos 安装 参考文档2.2 安装zookeeperzookeeper安装我就不细说了, 先贴一个配置文件示例 , 后续的参数配置都是基于这个zoo.cfg配置文件的基础上进行修改.zoo.cfg 配置# The numb

2021-07-19 21:46:43 1655 5

原创 Hadoop3.2.1 【 YARN 】源码分析 : LinuxContainerExecutor 浅析 [ 二 ]

111

2021-07-04 16:02:48 492

翻译 JVM 内存管理的不足

JVM 内存管理的不足:Java 对象存储密度低 : Java 的对象在内存中存储包含 3 个主要部分:对象头、实例数据、对齐填充部分。例如, 一个只包含 boolean 属性的对象占 16byte:对象头占 8byte,boolean 属性占 1byte, 为了对齐达到 8 的倍数额外占 7byte。而实际上只需要一个 bit(1/8字节)就够了。Full GC 会极大地影响性能 : 尤其是为了处理更大数据而开了很大内存空间的 JVM来说, GC 会达到秒级甚至分钟级。OOM 问题影响稳定性 :

2021-07-04 15:55:23 222

jdk-8u251-macosx/linux/windows 多版本下载

多版本JDK jdk-8u251-linux-x64.rpm jdk-8u251-linux-x64.tar.gz jdk-8u251-macosx-x64.dmg jdk-8u251-windows-i586.exe jdk-8u251-windows-x64.exe

2020-06-28

虚拟机上网环境设置.doc

虚拟机上网环境设置.doc

2020-06-12

《编译原理(第二版)》带书签.pdf

编译原理 第二版 带书签, 赵建华 译

2019-06-06

Flink基础教程.pdf

原版。高清,带页签。 作为新一代的开源流处理器,Flink是众多大数据处理框架中一颗冉冉升起的新星。它以同一种技术支持流处理和批处理,并能同时满足高吞吐、低延迟和容错的需求。本书由Flink项目核心成员执笔,系统阐释Flink的适用场景、设计理念、功能、用途和性能优势

2019-05-28

数据结构与算法分析 java语言描述(原书第3版)中文PDF+源码+课后习题源码

数据结构与算法分析 java语言描述(原书第3版)中文PDF+源码+课后习题源码

2019-05-08

深入理解计算机系统(原书第3版)PDF 计算机科学丛书 [美] 兰德尔 E.布莱恩特

前言   本书(简称CS:APP)的主要读者是计算机科学家、计算机工程师,以及那些想通过学习计算机系统的内在运作而能够写出更好程序的人。   我们的目的是解释所有计算机系统的本质概念,并向你展示这些概念是如何实实在在地影响应用程序的正确性、性能和实用性的。其他的系统类书籍都是从构建者的角度来写的,讲述如何实现硬件或系统软件,包括操作系统、编译器和网络接口。而本书是从程序员的角度来写的,讲述应用程序员如何能够利用系统知识来编写出更好的程序。当然,学习一个计算机系统应该做些什么,是学习如何构建一个计算机系统的很好的出发点,所以,对于希望继续学习系统软硬件实现的人来说,本书也是一本很有价值的介绍性读物。大多数系统书籍还倾向于重点关注系统的某一个方面,比如:硬件架构、操作系统、编译器或者网络。本书则以程序员的视角统一覆盖了上述所有方面的内容。   如果你研究和领会了这本书里的概念,你将开始成为极少数的“牛人”,这些“牛人”知道事情是如何运作的,也知道当事情出现故障时如何修复。你写的程序将能够更好地利用操作系统和系统软件提供的功能,对各种操作条件和运行时参数都能正确操作,运行起来更快,并能避免出现使程序容易受到网络攻击的缺陷。同时,你也要做好更深入探究的准备,研究像编译器、计算机体系结构、操作系统、嵌入式系统、网络互联和网络安全这样的高级题目。   读者应具备的背景知识   本书的重点是执行x86-64机器代码的系统。对英特尔及其竞争对手而言,x86-64是他们自1978年起,以8086微处理器为代表,不断进化的最新成果。按照英特尔微处理器产品线的命名规则,这类微处理器俗称为“x86”。随着半导体技术的演进,单芯片上集成了更多的晶体管,这些处理器的计算能力和内存容量有了很大的增长。在这个过程中,它们从处理16位字,发展到引入IA32处理器处理32位字,再到最近的x86-64处理64位字。   我们考虑的是这些机器如何在Linux操作系统上运行C语言程序。Linux是众多继承自最初由贝尔实验室开发的Unix的操作系统中的一种。这类操作系统的其他成员包括Solaris、FreeBSD和MacOS X。近年来,由于Posix和标准Unix规范的标准化努力,这些操作系统保持了高度兼容性。因此,本书内容几乎直接适用于这些“类Unix”操作系统。   文中包含大量已在Linux系统上编译和运行过的程序示例。我们假设你能访问一台这样的机器,并且能够登录,做一些诸如切换目录之类的简单操作。如果你的计算机运行的是Microsoft Windows系统,我们建议你选择安装一个虚拟机环境(例如VirtualBox或者VMWare),以便为一种操作系统(客户OS)编写的程序能在另一种系统(宿主OS)上运行。   我们还假设你对C和C++有一定的了解。如果你以前只有Java经验,那么你需要付出更多的努力来完成这种转换,不过我们也会帮助你。Java和C有相似的语法和控制语句。不过,有一些C语言的特性(特别是指针、显式的动态内存分配和格式化I/O)在Java中都是没有的。所幸的是,C是一个较小的语言,在Brian Kernighan和Dennis Ritchie经典的“K&R”文献中得到了清晰优美的描述\[61\]。无论你的编程背景如何,都应该考虑将K&R作为个人系统藏书的一部分。如果你只有使用解释性语言的经验,如Python、Ruby或Perl,那么在使用本书之前,需要花费一些时间来学习C。   本书的前几章揭示了C语言程序和它们相对应的机器语言程序之间的交互作用。机器语言示例都是用运行在x86-64处理器上的GNU GCC编译器生成的。我们不需要你以前有任何硬件、机器语言或是汇编语言编程的经验。   给C语言初学者  关于C编程语言的建议   为了帮助C语言编程背景薄弱(或全无背景)的读者,我们在书中加入了这样一些专门的注释来突出C中一些特别重要的特性。我们假设你熟悉C++或Java。

2019-03-08

Java虚拟机规范(Java SE 8版) 带书签

Java虚拟机规范(Java SE 8版) (Oracle官方发布,Java虚拟机技术创建人撰写,国内资深Java技术专家翻译,是深度了解Java虚拟机和

2018-10-26

Hadoop权威指南:大数据的存储与分析(第4版)

Hadoop权威指南:大数据的存储与分析(第4版) 出版社: 清华大学出版社 PDF版本

2018-10-17

HBase应用架构PDF版本

HBase应用架构 [美] 吉恩-马克·斯帕加里(Jean-Marc Spaggiari) 著,陈敏敏 夏锐 陈其生 译

2018-09-21

Thinking in UML(2 edition)

在网上下载的,有兴趣的可以看看。 ------------------------------------------------ 当你的才华还撑不起你的野心时,那你就应该静下心来学习;当你的能力还驾驭不了你的目标时,那就应该沉下心来历练、沉淀和积累!

2014-06-24

JavaScript语言精粹

在网上下载的,有兴趣的可以看看。 ------------------------------------------------ 当你的才华还撑不起你的野心时,那你就应该静下心来学习;当你的能力还驾驭不了你的目标时,那就应该沉下心来历练、沉淀和积累!

2014-06-24

《谁说菜鸟不会数据分析》入门篇-简版电子书

整理的电子书,有喜欢的可以下载。 ------------------------------------------------------------ 当你的才华还撑不起你的野心时,那你就应该静下心来学习;当你的能力还驾驭不了你的目标时,那就应该沉下心来历练、沉淀和积累!

2014-06-24

[逻辑思维训练500题II].于雷.扫描版

整理的电子书,有喜欢的可以下载。 ------------------------------------------------------------ 当你的才华还撑不起你的野心时,那你就应该静下心来学习;当你的能力还驾驭不了你的目标时,那就应该沉下心来历练、沉淀和积累!

2014-06-24

空空如也

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

TA关注的人

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