- 博客(73)
- 收藏
- 关注
原创 maven插件学习(maven-shade-plugin和maven-antrun-plugin插件)
maven高级插件maven-shade-plugin、maven-antrun-plugin解决类冲突
2022-12-04 20:42:57
1324
原创 记录一次flink程序类转换异常
今天更新flink程序时候报了一个异常,如下图:第一反应就是看代码是否有未判断类型的强转,找到代码对应位置确认了在强转前做了类型判断了,所以只能是怀疑val类的oracle.sql.TIMESTAMP和强转的(oracle.sql.TIMESTAMP)类不一样?接着debug时候加了jvm参数-D -verbose:class将程序中加载的所有类以及类所在的路径都打印出来,找oracle.sql.TIMESTAMP,结果如下:果然oracle.sql.TIMESTAMP类被l..
2022-04-15 15:05:04
652
原创 centos7安装桌面
网上有很多安装桌面的命令,很多都是不可用的,亲测下边是可以安装成功的yum -y install epel-releaseyum install -y kernel-develyum groupinstall "GNOME Desktop"systemctl isolate graphical.targetsystemctl set-default graphical.target安装完后续重启也都是默认启动桌面程序。...
2022-04-08 09:11:32
5754
原创 maven私服搭建并配置到项目中
通过docker-compose搭建version: '3'services: neo4j: image: sonatype/nexus3:3.37.3 container_name: nexus3 hostname: nexus3 volumes: - data:/nexus-data restart: always environment: INSTALL4J_ADD_VM_PARAMS: -Duser.timezone
2022-02-16 08:19:57
1635
原创 debain国内源地址
debain国内源很多,我最常用的就是清华源,清华源网上一搜就有很多,我之所以还写这篇笔记是为了记录一下过早的系统中过内源已经没有的情况下如何安装和更新软件。此处记录debain8-11。版本号 代号 8 jessie 9 stretch 10 buster 11 bullseye 其中debain8的官方镜像和国内镜像都没有backports了,所以直接按照网上的配置成清华源并不能解决
2022-02-15 22:47:23
3046
原创 实现spring全局aop事务下部分异常不回滚
一把再SpringBoot中拿aop做全局事务时候代码大致都是如下:@SpringBootConfiguration@EnableTransactionManagement@EnableAspectJAutoProxy@MapperScan("xxx.server.dao.mapper")public class JdbcConfig { private static final String AOP_POINTCUT_EXPRESSION = "execution (* xxx.se
2022-01-27 22:30:55
1164
原创 记录解决flink通过pushgateway导致指标缺失问题
最近在做一个flink程序的监控,技术选型以后最终选择将flink指标通过pushgateway来写道prometheus中,程序架构如下:JobManager和TaskManager进程都独立将指标push给PushGateway,然后Prometheus再定时去抓去PushGateway中指标,指标进Prometheus以后再通过grafana配置监控图。flink配置参数如下:metrics.reporter.promgateway.class: "org.apache.flink.
2022-01-25 21:53:18
4587
原创 go template笔记
if else if写法{{ if eq "high" .Labels.severity }}高{{ else if eq "middle" .Labels.severity }}中{{ else }}低{{end}}格式化时间并转化为北京时区{{ (.StartsAt.Add 28800e9).Format "2006-01-02 15:04:05" }}
2022-01-14 16:34:24
151
原创 Jackson反序列化多态处理
前言:最近工作中需要将Prometheus的yml格式配置文件反序列化为Java实体,试了下Jackson就可以很完美的满足这个需求,正好Spring中自带Jackson,所以就用Jackson实现了。正文:在反序列化过程中碰到一个问题就是Prometheus的rule_files中的rules数组中的rule可以是RecordingRule也可以是AlertingRule,这个正好对应于Java中的多态。配置格式如下:rules: - record: <string>
2021-11-25 22:35:50
585
7
原创 Java keyTool使用教程
最近公司做的项目中需要使用license机制授权,网上有开源的trueLicense,这个里边用到了keyTool生成密钥对,这里记录一下我使用keyTool过程。1. 使用默认配置# 生成私匙库keytool -genkeypair -keysize 1024 -validity 3650 -alias "privateKey" -keystore "privateKeys.store" -storepass "abc123" -keypass "abcd1234" -dname "CN=ca
2021-09-29 16:16:35
1919
1
原创 Spring-doc-openapi3实用配置
1.配置swagger使用jwt可以通过编程式实现,也可以通过注解式实现,我这里拿注解式举例@SpringBootConfiguration@OpenAPIDefinition(info = @Info(title = "API", version = "v1"))@SecurityScheme( name = "token", type = SecuritySchemeType.HTTP, bearerFormat = "JWT",
2021-07-20 08:44:22
8851
3
原创 k8s-v1.20.6安装metrics-server和dashboard
metrics官网地址:https://github.com/kubernetes-sigs/metrics-server/
2021-06-02 13:38:58
786
原创 docker镜像迁移
docker images找到自己需要迁移的镜像id,此处以k8s.gcr.io/metrics-server/metrics-server镜像为例.
2021-06-02 12:10:23
429
原创 安装k8s-v1.20.6
本文将基于虚拟机器中centos7.9安装单节点k8s-v1.20.6。0.系统信息ip: 172.16.89.2hostname: hadoop00user: root1.系统参数配置1.1 关闭swap# 不关闭swap初始化会报错,有办法跳过,但是建议还是关闭swapoff -ased -i.bak '/swap/s/^/#/' /etc/fstab1.2关闭selinuxsetenforce 0sed -i 's/^ *SELINUX=enforcing/
2021-04-27 20:09:17
917
原创 Alpine Docker安装并启动ssh
# 配置国内源echo "http://mirrors.aliyun.com/alpine/latest-stable/main/" > /etc/apk/repositoriesecho "http://mirrors.aliyun.com/alpine/latest-stable/community/" >> /etc/apk/repositories# 升级apk-toolsapk upgrade --no-cache apk-tools# 安装openssh并配置h.
2021-04-22 20:18:48
2682
原创 记录一次moonbox冲突排查过程
在使用moonbox过程中通过SparkUI界面查看application使用的executor时候日志会报java.lang.NoSuchMethodError: javax.ws.rs.core.Application.getProperties,看这个错误就知道是jar冲突导致的。解决思路就是在启动driver时候添加jvm的-verbose:class参数,此处为:spark.driver.extraJavaOptions '-verbose:class'确定这个类目前是从哪个ja..
2021-04-14 22:44:48
197
原创 es查询语法
1.selectstreamId,flowId, dataGeneratedTs,dataProcessTs,doneTs,feedbackTime,rddTs,sinkTs,swiftsTs fromwormhole_feedback_2_adx where flowId = 23704 anddataProcessTs >= "2020-12-08 11:00:00.000000+0800" anddataProcessTs <= "2020-12-08 12:00:00.00000...
2020-12-09 17:27:18
452
原创 lsof命令学习笔记
1.查看某个端口网络连接情况lsof -i :100102.查看某个进程在某个端口连接情况lsof -a -i :10010 -p 335603.
2020-11-13 00:22:47
392
原创 聊一聊shell中字符串 单引号 双引号以及执行字符串命令中的坑
一直以来对shell中字符串的了解就是单引号和双引号内的都是字符串,双引号内字符串可以被替换成变量,单引号就是原字符串输出,今天在开发一个hdfs跨集群拷贝数据脚本时候发现shell echo出来同样的命令手动执行可以执行,在shell内通过${cmd}方式却报错,通过sh -x a.sh才发现问题产生的根源,具体如下:众所周知hdfs在集群内部拷贝文件命令如下:hdfs dfs -cp src_path target_path我这里是跨集群拷贝,集群的配置文件中集群部门的同事由于种种原因不愿
2020-10-19 20:24:45
3323
1
原创 SpringBoot动态增删定时调度
Spring和SpringBoot中常见的使用定时调度方式@Scheduled(cron = "1 * * * * ?")public void check() { try { System.out.printf("Time: %s, thread: %s.%n", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").format(LocalDateTime.now()),
2020-10-12 19:36:07
298
1
原创 jdk8-stream笔记
今天jdk15已经发布了,我却还在jdk8原地踏步,今天发现jdk8的stream api竟然有groupBy操作,感觉代码又能优化一波了。1.groupBy/mapping操作 XmgtProjectTableView t1 = new XmgtProjectTableView(); t1.setDatabaseId(1L); t1.setTableName("a"); XmgtProjectTableView t2 = new Xm
2020-09-17 18:15:28
146
原创 hdfs/spark跨集群数据迁移拷贝方案汇总
最近公司在做多个集群的合并和下线工作,部分集群要缩小规模,a集群有flink/spark程序实时写数据到a集群的hdfs/hive上,这部分部分数据要迁移到b集群的hdfs,由于a程序用到组件过多所以决定程序还保留在a集群,a集群的flink/spark程序将数据写到b集群,同时a集群的历史数据也要迁移到b集群。所以这里就设计到3处改动:spark程序跨集群写数据 sparkConf.set("hive.metastore.uris", "thrift://xxx.xxx.xxx.xxx:9083"
2020-09-14 10:31:50
3914
原创 项目开源准备-license和notice文件
近期接到个任务,组内有个项目计划开源,让我负责生成license和notice文件,看了网上别的开源项目的,最终采用org.codehaus.mojo.license-maven-plugin和org.jasig.maven.maven-notice-plugin这两个插件,pom配置如下: <plugin> <groupId>org.codehaus.mojo</groupId>
2020-06-30 00:11:58
2840
原创 fastjson使用笔记
1.将字符串转为特定范型的mapJSON.parseObject(result, new TypeReference<HashMap<String, Object>>(){});2.格式化后保持原字符串中的顺序JSON.parseObject(result, new TypeReference<HashMap<String, Object>...
2020-04-29 10:08:03
262
原创 leetcode-804-唯一摩尔斯密码词
这个题目解法比较简单,单词转成摩斯码后拿set去重即可。唯一注意的是set选用HashSet比TreeSet时间要快一点,TreeSet是有序集合,所以会比无序集合慢一点。class Solution { private String[] morseArray = new String[]{".-","-...","-.-.","-..",".","..-.","--.",".....
2020-04-22 21:14:26
220
原创 记录一次本地iview项目无法浏览器无法访问问题
最近换了一台电脑,换完电脑后试着本地启动了一下基于iview开发的一个web项目,yarn dev项目可以正常启动无任何报错,但是页面竟然无法打开,报错如下:看这个异常信息应该是我新电脑只装了node和npm没有装iview导致,所以执行如下命令之后再重启,报错消失:npm install -g vue-clinpm install --save iview...
2020-04-21 20:13:24
1865
原创 leetcode-203-移除链表元素
题目要求移除链表元素并返回链表头结点:目前我自己找到3种解法:1.通过递归实现: public static ListNode removeElements(ListNode head, int val) { if (head == null) { return null; } if (head.val =...
2020-04-17 10:24:10
142
原创 hadoop distcp报错记录
1.报如下错误:Caused by: java.io.IOException: Check-sum mismatch between hdfs://xxx.xxx.xxx.xxx:8888/warehouse/dtp.db/stg_t02_lender_predict_income/003584_0 and hdfs://nebula/user/nebula/warehouse/ods/le...
2020-03-15 20:29:25
1291
原创 线程池拒绝策略不当导致的伪死锁
从别的同事那里接手了一个保存kafka数据到hbase的程序,交接时候同事就提示我程序有时候会由于hbase挂了容易导致程序出现死锁,让后期维护时候多看看这个程序状态,根据日志找到offset,重新配置消费重启程序即可,当时也没多想就直接接下来了。维护一段时间之后发现有时候hbase集群有问题了恢复之后程序还能正常执行,有时候就不能正常执行,产生同事说的死锁情况,程序不再执行,出现这种情况的频...
2020-02-08 17:10:25
489
原创 获取activeNamenode地址
工作中需要通过shell脚本跨hadoop集群拷贝数据,所以需要获取到存放数据的hdfs集群active namenode,经测试有如下两种方法:方法一:通过hdfs web端jmx获取active_namenode=''namenodes='10.130.81.102 10.130.81.103'for namenode in ${namenodes}do curl -s "...
2020-01-15 11:09:19
1705
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人