flink问题:esotericsoftware.kryo.serializers.CollectionSerializer.read NullPointerException
(flink)问题:esotericsoftware.kryo.serializers.CollectionSerializer.read NullPointerException 异常如下 123456789101112131415161718192021222324252627282930313233com.esotericsoftware.kryo.KryoException: java.lang.NullPointerExceptionSerialization trace:values (org.apache.avro.generic.GenericData$Record) at com.esotericsoftware.kryo.serializers.ObjectField.read(ObjectField.java:125) at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:528) at com.esotericsoftware...
记一次项目压测
结合项目说下压测/调优 项目压测,cpu占用比较大,除了测试服务器本身的性能影响外,还存在项目本身的问题 这是服务器的配置 4core,8G,磁盘50g,作为一个高峰期并发不到1000的的项目,总的来说这个配置还能用.然后并发刚干到30,就这样了 最下面两条的是两台服务器内存.粉色的是项目所在服务器的cpu,蓝色是db cpu,项目占用cpu彪的太狠,所以展开调查 压测,将rate up时间弄得稍微长一点.项目是docker服务,jdk版本1.8 docker exec -it id bash :进入容器.需要进入容器操作jstack命令 jps -l:查看java服务pid,当然容器内部就一个服务包和openjdk jstack -l pid >> /opt/xxx.txt: 将堆栈信息打出来 通过jstat -gcutil pid查看M的值,即MetaSpace区使用率 通过jstat -gc pid 2s(间隔时间) 3(持续次数)命名查看MU/MC即Meta区的使用率 使用jstat -gccause p...
Centos恢复删除的文件
当意识到误删除文件后,切忌千万不要再频繁写入了,否则你的数据恢复的数量将会很少。 而我们要做的是,第一时间把服务器上的服务全部停掉,直接killall 进程名 或者 kill -9 pid 。 然后把误删除文件所在分区,重新挂载成ro,只读的 (mount -o ro /dev/sdb2 /data/)。 然后我们需要去下载和安装一个工具叫做 extundelete 1.安装依赖包# yum install e2fsprogs* -y 2.下载并安装extundelete 1234567wget https://sourceforge.net/projects/extundelete/files/extundelete/0.2.4/extundelete-0.2.4.tar.bz2/download?use_mirror=jaisttar -jxvf extundelete-0.2.4.tar.bz2cd extundelete-0.2.4./configure --prefix=/usr/local/extundelete#...
Realm: Linux下,流量转发端口转发工具,支持本机BBR
realm地址: https://github.com/zhboner/realm 简介 支持DDNS 只要传入一个域名,那么就能自动后台更新解析。高效,低消耗 依托于Rust语言,Realm保证内存安全。另外,相较于采用Go语言编写的Brook和gost,Realm执行速度更快,资源占用更低,非常适合在低配置的主机上使用。简单 相较于使用iptables动辄几条复杂的命令,Realm仅需一条命令就能启动,保证了部署的方便。UDP + TCP 无需额外的工作,Realm就能同时转发UDP和TCP。 下载,安装 linux环境下载此包, 然后放在**/usr/bin**下, 并赋予可操作权限 使用方式Start from command line arguments:123456# 让 realm 监听本机上的 5000 端口,然后转发流量到 1.1.1.1:443#具体的,启动 realm 需要两个参数:-l 和 -r。#-l 指定监听的本机地址和端口,地址可以省略,但必须指定端口。不指定地址的话会使用默认的 127.0.0.1 地址#-r 指定转发的目的...
Shell(Bash)学习记录
shell脚本 脚本以#!/bin/bash开头 输出Hello World !到/usr/test.txt(如果输入文本中带引号和$,需要用\进行转义) 12#!/bin/bashecho "\"Hello World\" !" > /usr/test.txt 删除日志的一份shell脚本,当前路径在s下,然后要删除a,b,c下的log /s/a /s/b /s/c 12345678910111213141516171819202122232425#!/bin/bash# 定义变量folders# ()是数组folders=(a,b,c)# 使用${folders}引用变量# 逻辑循环for file in ${folders[*]}do cd ${file} for subfile in ./* do # test -d:检测是否...
centos7升级openssl
CentOS7升级OpenSSL版本原文 1.CentOS7.6默认安装的openssl版本为12# 查看openssl版本openssl version 2.下载最新的openssl1wget https://www.openssl.org/source/openssl-1.1.1c.tar.gz 3.解压并编译安装12345678tar -zxvf openssl-1.1.1c.tar.gzcd openssl-1.1.1c./config --prefix=/usr/local/openssl #如果此步骤报错,需要安装perl以及gcc包make && make installmv /usr/bin/openssl /usr/bin/openssl.bakln -sf /usr/local/openssl/bin/openssl /usr/bin/opensslecho "/usr/local/openssl/lib" >> /etc/ld.so.confldconfig -v ...
crontab的用法及纠错
crontab在线网站: https://tooltt.com/crontab/c/56.html安装cron(centos默认自带)123yum -y install vixie-croninfo crontab: 验证 一些基本使用命令123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数crontab -l //列出某个用户cron服务的详细内容crontab -r //删除没个用户的cron服务crontab -e //编辑某个用户的cron服务比如说root查看自己的cron设置:crontab -u root -l再例如,root想删除fred的cron设置:crontab -u fred -r在编辑cron服务时,编辑的内容有一些格式和约定,输入:crontab -u root -e查看执行日志: tail -f /var/log/...
envsubst替换环境变量
Envsubst用shell格式字符串中的值替换环境变量。要替换的变量应位于${var}或$var格式。 123456789101112替换环境变量stdin输出到stdout:echo '$HOME' | envsubst将输入文件中的环境变量替换为stdout:envsubst < path/to/input_file将输入文件中的环境变量替换为文件,并将其输出到新文件中:envsubst < path/to/input_file > path/to/output_file用空格分隔的列表,替换输入文件中的环境变量:envsubst '$USER $SHELL $HOME' < path/to/input_fileenvsubst '$USER $SHELL $HOME' < xxx.yaml > xxxx1.yaml
Maven配合fabric8插件整合使用
Maven配合fabric8插件整合使用<谨供参考> 自建镜像仓库并推送到远端123456789<docker.plugin.version>0.35.0</docker.plugin.version><!--docker守护进程uri,一般是自己的docker所在环境:2375--><docker.host>http://localhost:2375</docker.host><!--镜像推送及拉取地址--><docker.registry>docker.io</docker.registry><!-- namespace使用本人docker用户名 --><docker.namespace>xxx</docker.namespace><docker.username>xxx</docker.username><docker.password>xxx</docker.password> 12...
MySQL中EXPLAIN结果的参数详解
MySQL中EXPLAIN结果的参数详解 explain显示了mysql如何使用索引来处理select语句以及连接表。可以帮助选择更好的索引和写出更优化的查询语句。 EXPLAIN列的解释: select_type123456781) SIMPLE:简单的SELECT,不实用UNION或者子查询。2) PRIMARY:最外层SELECT。3) UNION:第二层,在SELECT之后使用了UNION。4) DEPENDENT UNION:UNION语句中的第二个SELECT,依赖于外部子查询。5) UNION RESULT:UNION的结果。6) SUBQUERY:子查询中的第一个SELECT。7) DEPENDENT SUBQUERY:子查询中的第一个SELECT,取决于外面的查询。8) DERIVED:导出表的SELECT(FROM子句的子查询) table1显示这一行的数据是关于哪张表的 type1234567891011121314151617这是重要的列,显示连接使用了何种类型。从最好到最差的连接类型:const、eq_ref、ref、range、index和ALLTy...
