- 博客(175)
- 收藏
- 关注
原创 linux持续学习
文件一经创建,即具有三种访问方式:读:x、写/更改:w、执行(脚本或程序):x文件权限:文件属主、同组用户、其他用户ls -l : 查看更详细的文件资料 包括 文件所占空间 文件类型 权限位 文件属主 文件长度 更新时间 文件名touch myfile: 创建文件,文件名为myfile 文件权限举例: rwx r-x — 前三位 rwx 文件属主权限 中间三位 r-x 同组用户权限
2016-03-21 13:04:41 828 1
原创 jvm类的加载、连接及初始化
读懂jvm崩溃日志,并进行相关参数的调整,解决线上问题。jdk自带命令工具:jconsole、jvisualvm。类加载: //可插入一张图在java代码中,类型的加载(将已经存在的class的字节码文件从磁盘加载到内存中,即查找并加载类的二进制数据)、连接(将类与类之间的调用关系处理好,并对字节码文件进行校验)、验证:确保被加载的类的正确性 准备:为类的静态变量static分配内存,并将其初始化为默认值(整型0,布尔型false、引用默认值null) 解析:把类中的..
2021-01-25 17:26:40 265 1
原创 Java zlib 解压缩 json 字节数组
本demo实现了:1.将字符串压缩,转为字节流。2. 定义对象,将字节流存入对象中。2. 使用Gson,将对象转为json字符串。3. 使用Gson将字符串转为对象。4. 获取对象中的字节流,并进行解压,得到原始字符串。备注:主要是实际业务中,传输协议中需要兼容多种压缩算法,故不能对json串进行整体压缩,需要将压缩类型单独定义,再使用单独的key传输压缩后的字节流。HelloJsonObj:public class HelloJsonObj { Strin.
2021-01-22 17:35:55 873
原创 mysql读写分离
mysql读写分离问题:今天遇到mysql读写分离导致的业务问题。insert后,立刻关联该表进行查询,查不到数据,导致业务异常。解决方案:1. 将该类业务insert与select控制在一个事务中。2. 写多读少的业务直接连主库,不使用读写分离地址。3. select有强一致需求的sql使用hint语句,强制转发请求到主实例上执行。...
2020-12-08 18:08:03 211
原创 redis分布式锁
public String set(String key, String value, String nxxx, String expx, int time) { this.checkIsInMultiOrPipeline(); this.client.set(key, value, nxxx, expx, time); return this.client.getStatusCodeReply(); }NX是不存在时才set...
2020-10-14 15:35:54 320
原创 ES节点类型及索引生成过程
1. ES节点类型: master 、data、ingest、协调节点、机器学习2. index buffer ,每秒生成一个segment即可被搜索到,所以是近实时的搜索引擎。transaction log 落盘。segments merge合并。30分钟一次flush操作,将segment刷入磁盘。...
2020-10-14 15:33:41 870
原创 Spring注解 @Async(“asyncExecutor“)
import org.springframework.scheduling.annotation.Async;/** * Annotation that marks a method as a candidate for <i>asynchronous</i> execution. * Can also be used at the type level, in which case all of the type's methods are * considered .
2020-09-16 11:28:38 2675 1
原创 Linux-wc的使用
grep '开始发送邮件:' info*.log | grep '03-14' | wc -l//以上可以查看3月14号调用了多少次邮件接口linux 自带有 wc 工具, 可以方便的统计文件中文本的行数具体通过wc --help 可以查看。wc -l filename 就是查看文件里有多少行wc -w filename 看文件里有多少个word。wc -L file...
2020-03-16 11:30:32 247
原创 excel浏览器直接下载
//返回给浏览器自动下载 @GetMapping("/download") public void download(HttpServletResponse response) { List<Demo> list= new ArrayList<>(); Demo d1 = new Demo("z3", 22);...
2020-03-10 08:39:40 381
原创 2020-03-05
mysql binlog 与 mysql dumpWireShark抓包工具使用字符集 UTF-8 ASCII GBK Unicodeleft join 、inner join、right join区别concat 、 group concat区别count(*)与count(某字段)的区别ARP协议的理解TCP Dump命令使用Netty保存上下文的信息、粘包分包...
2020-03-05 11:35:41 214
原创 redis存储树结构数据
树形结构数据的存储:1. parent Id2. 竖线分割3. redis存储树形结构,存在同步风险导致数据不一致4. 以空间换时间,增加一张关联表5. 左右值的二叉树实现,可快速查询指定节点的下级节点...
2020-03-03 16:11:13 1992
原创 Netty相关
最近开发过程中遇到很多netty相关的问题1. 粘包 拆包2. 读写超时的控制3. 异常重连4. 自动更新bind的Ip及端口,无需重启
2020-02-25 15:45:56 118
原创 RoHs认证
“CE”标志是一种安全认证标志,被视为制造商打开并进入欧洲市场的护照。CE代表欧洲统一(CONFORMITE EUROPEENNE)。凡是贴有“CE”标志的产品就可在欧盟各成员国内销售,无须符合每个成员国的要求,从而实现了商品在欧盟成员国范围内的自由流通。RoHS是由欧盟立法制定的一项强制性标准,它的全称是《关于限制在电子电器设备中使用某些有害成分的指令》(Restriction of Ha...
2020-02-19 10:00:01 406
原创 项目管理基本术语
1. 投入人数(人月)人月是工作量的计量单位,是项目所有参 与者工作时长的累计,是最为方便计算成本的数据。是项目管理中常用的概念。如一个项目前期投入3个人工作2个月,中间2人工作0.5月,后期1人 (0.33兼职)工作3个月,那么工作量的计算就是:3人*2月+2人*0.5月+0.33*3月=8人月。2. 10人月的工作量,10人工作1个月可以完成吗?人月是项目所有参与者工作...
2020-02-17 11:14:43 972
原创 java注解系列
1.@PostConstruct (import javax.annotation.PostConstruct)2.@PreDestroy(import javax.annotation.PreDestroy)
2020-02-17 08:25:56 143
原创 maven相关
1. maven的setting文件配置2. maven的pom文件配置3. maven常用命令:mvn -versionmvn cleanmvn installmvn compilemvn test
2020-02-14 09:25:53 124
原创 本机调试时无法连接kafka的排查过程
程序配置文件:# KAFKA服务器地址和端口bootstrap.servers=192.168.200.17:9092本机Telnet该kafka服务器的ip及端口,是通的。但是程序却死活连不上。查看kafka的server.properties配置,使用的均为主机名。查看zookeeper配置:添加本机的Hosts文件即可:C:\Windows\Syste...
2020-02-12 13:44:44 1082
原创 RestTemplate没加超时时间,导致的程序卡死
@Component@Log4j2public class RestTemplateManager { @Autowired private RestTemplateBuilder builder; @Autowired private RestTemplate restTemplate; @Autowired private Monito...
2020-02-12 12:23:03 4115
原创 not in 与 NULL的坑
如果数据库某条记录中a字段存在NULL值,使用 where a not in ('why' , 'ym'); 无法查询出该条记录,因为NULL值比较特殊。也就是说,如果一张表中的总记录数为3条,使用where a not in ('why' , 'ym') 和where a in ('why' , 'ym') 查询的记录数相加之和并不一定等于3。如果我们not in后面的值是使用...
2020-02-12 12:19:10 439
原创 无法切换回java 1.7
场景:win10系统安装了1.7版本的JDK后,又安装了1.8版本的JDK,在后面的使用中想进行互相切换,但是1.8切换到1.7时一直失败1: 删除 C:\Windows\System32 目录下java.exe、javaw.exe、javaws.exe三个文件, 因为当使用安装版本的JDK程序时(JDK1.7以上),在安装结束后安装程序会自动将java.exe、javaw.ex...
2020-01-15 17:14:37 234
原创 Quartz的使用问题
比如需要同时订阅多个kafka主题。是用Quartz开多个Job,一个Job对应一个Kafka主题好点还是就开一个Job,然后Job里面开多线程,一个线程对应一个kafka主题的解析...
2020-01-15 15:23:20 161
原创 英语学习
ETS : 托福TOEFL(学术),托业TOEIC(职业)阅读,听力,背单词。1、公司与个人发展2、提高产品质量3、海外客服沟通主旨句:每一个段落的第一句背单词方法:分类法、词根、前缀、后缀、关联法分解法托业考试:100听力、100阅读,两题之间的间隔很短注重熟练度不打无准备的仗,考前需要卡时间点,做模拟题...
2020-01-14 08:20:58 319
原创 忘记了root密码
尴尬了,今天测试代码,结果发现服务器的root密码被改了,问了一圈大家都不知道密码是多少。还好有一位大佬Xshell记住了密码还能登上,但她也不记得root密码是多少。求解度神,使用以下命令,用她的Xshell重置了服务器root密码。sudo passwd root...
2020-01-07 20:11:04 365
转载 XXLjob
XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。学习地址:https://www.xuxueli.com/xxl-job/分布式定时任务调度系统技术解决方案(xxl-job、Elastic-job、Saturn)的比较:https://blog.51cto.com/89391...
2020-01-07 09:24:43 221
原创 kafka flush
日志刷新策略Kafka的日志实际上是开始是在缓存中的,然后根据一定策略定期一批一批写入到日志文件中去,以提高吞吐量.log.flush.interval.messages 消息达到多少条时将数据写入到日志文件 10000log.flush.interval.ms 当达到该时间时,强制执行一次flush nulllog.flush.shceduler.interval.ms 周期性检...
2020-01-06 13:27:21 2324
原创 Git安装与使用
由于电脑重装系统,需要重新安装各种软件,正好也同时记录下Git的安装过程。Git的下载很简单,只要打开官网:https://git-scm.com/点击下面的这个Download即可。之前刚来公司时安装的Git是2.8.2版本,现在Git最新版已经是2.24.1了。。不禁感慨。。。双击安装即可。在cmd窗口输入git help -a,可以看到git常用的一些命令,...
2020-01-02 18:41:57 160
原创 谷歌工程实践文档
今年,谷歌在GitHub上开源了他们的《谷歌工程实践文档(Google Engineering Practices Documentation)》。众所周知,Google具有许多涵盖所有语言和所有项目的通用工程实践,这些文档代表了他们的各种最佳实践的集体经验。请各位开发者和评审专家仔细阅读,思考如何在代码评审中全方面进行讲解和审查。原版链接如下:https://github.com/goog...
2019-12-20 08:44:04 355
原创 kafka 配置文件参数详解
# Licensed to the Apache Software Foundation (ASF) under one or more# contributor license agreements. See the NOTICE file distributed with# this work for additional information regarding copyright...
2019-12-16 11:07:57 312
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人