- 博客(38)
- 收藏
- 关注
原创 Hadoop 配置 Kerberos 认证
kinit: Invalid Uid in persistent keyring name while getting default ccacheCannot contact any KDC for realm KrbException: Message stream modified (41)kinit: relocation error: kinit: symbol krb5_get_init_creds_opt_set_pac_request,提交 spark on yarn
2023-10-15 19:23:59 4701 5
原创 Vmware 静态网络配置
仅主机模式(VMware1):使用host-only的方式是不能和外界通信的,只能够和本机的物理网卡通信桥接(VMnet0):使用桥接的方式使得自己的虚拟机和自己的真实机网卡在同一个网段NAT(VMnet8):网络地址转换,通过nat的连接方式可以使得虚拟机和真实机的网卡在不同的网段中。
2023-10-05 09:37:13 557
原创 查看进程环境变量
变量以name=value的形式描述。多个变量之间由 null(‘\0’)分隔,为了便于阅读,使用tr(translate)命令将’\0’替换为’\n’。而 PID 可用通过 ps / jps(java 进程) 等命令查看。每一个进程的环境变量存储在。1)选择要查看的进程。2)双击进程弹出窗口。
2023-07-26 20:44:40 791
原创 Windows Spark 开发测试版本快速搭建
(可选)添加环境变量 SPARK_HOME。并将 %SPARK_HOME%/bin、%SPARK_HOME%/sbin 添加到 path 中。为当前命令行添加 SPARK_HOME,如果添加了全局的 SPARK_HOME 则这里可以省略(可选)ps:本文使用的是 spark-3.3.0-bin-hadoop3.tgz。ps: 一台机器可以起多个 worker,指定不同的端口就行。
2023-07-21 10:14:13 391
原创 windows hadoop 开发测试版快速搭建
修改 %HADOOP_HOME%/etc/hadoop 下面的配置文件:core-site.xml、 hdfs-site.xml、 mapred-site.xml、 yarn-site.xml。(可选)修改 %HADOOP_HOME%/etc/hadoop 下面的脚本 hadoop-env.cmd,修改 JAVA_HOME 为本机jdk安装时配置的目录。并将 %HADOOP_HOME%/bin、%HADOOP_HOME%/sbin 添加到 path 中。填指定 ip 时,则 只会监听该 ip。
2023-07-21 09:56:51 426
原创 Windows与Linux服务管理
Linux 可以通过 service 或 systemctl 两种方式管理服务。Windows 可以通过 net 管理服务。
2023-05-14 19:47:14 148
原创 Linux 持续监控进程资源使用情况相关命令
1、 使用 jmap 监控 java 对象数量增长2、 使用 watch 持续监控进程资源使用情况并输出到文件。3、 使用 watch 持续监控进程资源使用情况,过滤内容并输出到文件。4、查看进程启动时间以及运行时间。
2023-03-18 10:57:27 855
原创 maven sonar 扫描单元测试覆盖率为0,但是单元测试数不为0
maven-surefire-plugin 的 argLine 参数导致 Jacooco 未执行。导致 sonar 扫描后的单元测试覆盖率为0。但是但与测试数量不为0。
2023-02-25 13:51:14 3524
原创 关于slf4j、log4j、log4j2 以及使用log4j-1.2-api将log4j适配到log4j2上的案例
关于 关于slf4j、log4j、log4j2 等的概念,以及介绍将三方库中的 log4j1 输出的日志转接到log4j2上的方式。
2022-11-18 22:23:39 4108
原创 Git 用户名和邮箱地址配置
Git 每次提交时,都会使用本地的用户名和邮箱地址作为用户信息。因此,建议保证 Git 提交时使用的用户名和邮箱地址与真实提交的用户信息一致,以便更方便地追溯提交者。
2022-09-05 18:04:19 1563
原创 使用 JABX 将 Map<String,String> 序列化成 <key>value</key>形式的字符串
JAXB(Java Architecture for XML Binding) 用于 XML 绑定的 Java 体系结构(JAXB)是允许 Java 开发人员将 Java 类映射到 XML 表示形式的软件框架。JAXB 支持将 Java 对象编组为 XML,然后将 XML 解组为 Java 对象。
2022-08-17 08:31:20 541
原创 Java SPI机制
SPI(Service Provider Interface),是JDK内置的一种服务提供发现机制,旨在由第三方实现或扩展的API。它可用于启用框架扩展和可替换组件。}
2022-08-03 20:20:49 220
原创 Java 自定义枚举类型
/name唯一性验证if(valueOf(name)!=null){}/***获取自定义枚举类型的name**@return枚举name}/***获取自定义枚举类型的title**@return枚举title}/***获取当前枚举类型的所有names*if(!new);}/***根据枚举name获取当前类型枚举对象**@paramname枚举name。...
2022-07-23 10:02:54 1086
原创 正则表达式匹配忽略大小写
正则表达式匹配时有两种忽略大小写的方式:(?i) 之后的字符在匹配时忽略大小写Patter.compile() 时,指定忽略大小写模式1、(?i) 之后的字符在匹配时忽略大小写。比如: System.out.println(Pattern.compile("(?i)abc").matcher("ABC").matches()); // true System.out.println(Pattern.compile("a(?i)bc").matcher("ABC")
2022-05-10 20:19:39 7249
原创 使用 Nexus 搭建 Maven私服仓库
下载并解压 nexus[root@iZuf6i2yvneqsd64c75nm5Z software]# tar -zxvf Nexus-3.21.1-01-unix.tar.gz解压后,有两个目录:nexus-versionsonatype-work[root@iZuf6i2yvneqsd64c75nm5Z software]# cd nexus-3.21.1-01/[root@iZuf6i2yvneqsd64c75nm5Z nexus-3.21.1-01]# lltotal 92dr
2022-05-02 19:44:38 498
原创 IDEA 为 Java 应用设置系统环境变量
调试程序时,有时候需要临时修改环境变量,但是不希望去系统环境变量中做修改。此时可以在 idea 中为程序设置环境变量。点击 Edit Configurations… 进入 Run/Debug Configurations 面板在 Environment variables: 中配置环境变量(输入框内的按钮,在弹出菜单中配置)比如 path=C:\Users\zhy\;如果要使用系统的环境变量,可以使用 $XXX$,比如:path=C:\Users\zhy\;$path$...
2022-04-30 10:10:01 8462
原创 修改浏览器缓存位置
1. Chrome方案一:在原来的缓存目录中创建一个新缓存目录的快捷方式1、新建你想要保存缓存的文件夹。例如:E:\Cache\Chrome2、查看 Chorme 的缓存位置:在Chrome浏览器的地址栏输如chrome:version查看Chrome的信息其中,个人资料路径(例如:C:\Users\a\AppData\Local\Google\Chrome\User Data\Default )下面的Cache文件夹就是Chrome的默认缓存位置3、删除目前 Chrome 缓存文件夹(或者
2022-04-23 17:39:37 3922
原创 如何使用 docker 快速启动一个 kafka 应用?
介绍在阿里云服务器启动测试用的 Kafka 应用。由于资源有限,使用单机模式。1.下载镜像zookeeperdocker pull zookeeperkafkadocker pull wurstmeister/kafka2.启动 zookeeper单机方式docker run -d --name docker_zookeeper -p 2181:2181 -t zookeeper3.启动 Kafkadocker run -d --name docker_kafka \
2022-04-11 21:49:46 2750
原创 为什么 String 类型在 Java中是不可变的?
String 在 Java 中是不可变的。不可变类是一个实例不能修改的类,实例中的所有信息都是在创建实例时初始化的,不并且能修改。不可变类有很多优点,本文从内存、同步和数据结构的角度阐述了为什么 String 设计为不可变的。一、字符串池的要求字符串常量池(String intern pool)是方法区中一个特殊的存储区。当一个字符串被创建并且该字符串已经存在于字符串常量池中时,将返回现有字符串的引用,而不是床架一个新对象。以下代码只在堆中创建一个字符串对象:String str1 = "zbh";
2022-03-13 17:17:18 3316 1
原创 设计模式中的六种关系:依赖、关联、聚合、组合、实现、继承
面向对象设计模式中,类与类之间主要有6种关系,他们分别是:实现、继承、组合、聚合、关联、依赖。他们的耦合度依次减弱。
2022-03-06 17:51:19 7297
原创 设置 ssh 超时断开时间
OpenSSH基于安全的理由,如果用户连线到SSH Server后闲置一段时间,SSH Server会在超过特定时间后自动终止SSH连线。相关配置所在路径:/etc/ssh/sshd_config其中有两个关于ssh超时断开的参数:ClientAliveInterval:服务器端向客户端发送心跳以判断客户端是否存活(即客户端是否操作服务器)的时间间隔,单位为秒,默认是0。ClientAliveCountMax:允许心跳无响应的次数。因此,ssh 登录后闲置时间过长会自动断开连接。可以修改以上配
2022-02-08 10:08:12 5669
原创 HashMap——如何保证容量为2的整数次幂?
先来看一下HashMap内部元素存放的容器——成员变量table的定义 /** * The table, initialized on first use, and resized as * necessary. When allocated, length is always a power of two. * (We also tolerate length zero in some operations to allow * bootstrapping
2022-01-22 15:18:20 1211 1
原创 @Inherit注解与注解的继承
引言父类上的注解能否被子类继承,怎样才能被子类继承?父类方法上的注解呢?验证先定义一个注解@Inherited@Retention(RUNTIME) // 可以通过反射读取注解public @interface MyInheritedAnnotation { String value() ;}然后定义父类,类上和方法上都标注有MyInheritedAnnotation注解@MyInheritedAnnotation("father class")public abstrac
2022-01-21 21:48:18 626
原创 浅谈Java GC
1.GC 基础1.1什么是GC?GC(Garbage Collection)——垃圾收集,GC就是找到内存空间的垃圾,然后回收垃圾,让程序员能够再次利用这部分空间的一种自动管理内存的机制。如图1.1所示:当我们new 一个Object的时候,系统就为我们在内存中分配了一块空间。并且我们让Object类型的引用obj指向了这块空间。之后又将obj的引用置为null(置为null其实是让这个引用在栈中分配空间,但是没有指向堆中的某块空间)。此时之前new Object()的时候分配的那块空间就无法被引用
2022-01-20 22:04:46 879
原创 classpath 与 java.class.path
classpath 与 java.class.pathclasspath:安装jdk时设置的系统环境变量,System.getEnv() 获取java.class.path:jvm 启动参数,System.getProperty() 获取二者关系:见jdk 源码中的注释——java.c 中:/* * For our tools, we try to add 3 VM options: * -Denv.class.path=<envcp> * -Dappli
2022-01-20 19:19:13 515
原创 关于 java.library.path、classpath、path 以及 java 程序一些依赖相关的理解
介绍java.library.path:Java 的属性。启动时通过 -Djava.library.path 指定;用来指定非 java 类包的位置。如:dll,so。 classpath:Java 启动时指定的类路径。如 .class 文件,.jar 文件。 path:一个系统环境变量,声明命令的搜索路径,让操作系统找到指定的工具程序。(jvm 也能直接读取 path 里面的动态链接库)关于 java 执行时需要的依赖class 依赖:通过 classpath 指定。 native 依赖:
2022-01-19 21:09:19 9970 1
原创 记一次Java与子进程交互的案例
最近遇到的一个需求:在A应用中集成B公司的应用。而B应用的所有功能依赖于B安装路径下面的动态链接库,从Path环境变量中读取。 问题是:A启动时就会读取Path,并且之后不会再读。如果此时Path中不包含B的动态链接库,则无法使用B的相关功能。 当然,可以让用户将B的动态链接库写入Path后,再重启A应用。但是这样会中断用户的操作,让用户体验感下降。 因此打算使用在子进程中处理B的相关功能的折中方案。 简单的说,就是在 A 进程中启动子进程 B 来完成某些操作,并获取返回结果。
2022-01-18 22:35:29 340
原创 Arrays.asList的一些坑
结论Arrays.asList() 对基本数据类型支持不友好,会把基本数据类型数组仿作一个参数。 Arrays.asList() 的参数改变后,结果得到得到List的值也会改变。 Arrays.asList() 的结果为Arrays的一个内部类,而不是 java.util.ArrayList测试public class ArraysUTest { @Test public void asListUTest() { int[] ints = new int[]
2022-01-17 21:55:23 514
原创 使用 NFS 创建共享目录并挂载
1. 安装 NFS[root@bigdata0 /]# yum -y install nfs-utils rpcbind2. 服务端配置创建共享目录 /share 并设置权限[root@bigdata0 /]# mkdir /share[root@bigdata0 /]# chmod 666 /share编辑 export 文件[root@bigdata0 /]# vi /etc/exports/share 192.168.50.0/24(rw,no_root_squa
2022-01-16 17:57:48 5591
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人