摘要:
概述 对于多分支的代码库,将提交记录从一个分支转移到另一个分支是常见需求。这时分两种情况: 需要另一个分支的所有提交记录,使用合并(git merge)只需要部分提交记录,可使用cherry pick。 命令 git cherry pick是一个很强大的命令,支持从某次、多次提交、多次连续提交、分支 阅读全文
摘要:
问题 在ELK日志查询平台看到如下报错信息: org.springframework.dao.DataIntegrityViolationException: ### Error updating database. Cause: java.sql.SQLIntegrityConstraintVio 阅读全文
摘要:
概要 Spring事务基于数据库事务,JDBC事务过程: 获取连接Connection con = DriverManager.getConnection()开启事务con.setAutoCommit(true/false);执行CRUD提交事务/回滚事务con.commit(), con.roll 阅读全文
摘要:
Servlet Sun公司制订的一种用来扩展Web服务器功能的组件规范。当浏览器将请求发送给Web服务器(比如:apcahe的web server),Web服务器会向Servlet容器发送请求,Servlet容器负责解析请求数据包。 ServletContext 容器在启动时,会为每一个应用创建唯一 阅读全文
摘要:
问题爆出 企微群告警爆了,立即去看ELK报错日志,报错日志非常莫名其妙:java.lang.ArrayIndexOutOfBoundsException: 16 原因分析 事后发现共有18257次报错日志,时间跨度 19:09:24.331 - 19:19:20.332,如下截图所示: 这个时间点正 阅读全文
摘要:
背景 最近在负责开发维护的一款数据平台,有一个功能是把数据从某个源头数据源(如常规的JDBC数据源,MySQL,Oracle等)推到目地数据源(还包括企微,MQ等)。一次推送数据就是一个任务,当然需要记录此次推送任务的执行情况,如任务的开始时间,结束时间,任务名称,任务执行状态,任务日志(失败原因) 阅读全文
摘要:
背景 项目上线后,稳定运行8个月后,陆陆续续在ELK日志查询平台发现如下报错: java.lang.Exception: org.apache.http.conn.HttpHostConnectException: Connect to qyapi.weixin.qq.com:443 [qyapi. 阅读全文
摘要:
秒杀服务的限流策略 合法性限流 鉴定非法请求: 验证码(剔除机器人,使用户的请求时间随机分布)非法IP限制隐藏秒杀按钮入口 负载限流 负载均衡分发请求到每个服务器多级(级联)负载,第二层MAC负载,第三层IP负载,第四层端口号负载,第七层nginx负载级联复杂均衡,级联数的权衡软件、硬件负载均衡 服 阅读全文
摘要:
概述 垃圾回收关注的是堆heap内存,需解决三个问题:哪些内存需要回收?什么时候回收?如何回收? GC如何发起 垃圾回收针对不同的分区又分为MinorGC和FullGC,不同分区的触发条件又有不同。总体来说GC的触发分为主动和被动两类: 主动:程序显式调用System.gc()发起GC(不一定马上甚 阅读全文
摘要:
概述 面试必问系列。 参数分类 标准参数:-,功能和输出的参数都很稳定,在将来的 JVM 版本中很可能不会改变。用java或java -help命令输出所有的标准参数非标准参数:-X,在将来的版本中可能会改变。可用java -X来检索,不保证所有参数都可以被检索出来非Stable参数:-XX,种类多 阅读全文