排查问题
文章平均质量分 62
开发中遇到的问题
逢甘霖成大事
这个作者很懒,什么都没留下…
展开
-
Java连接SQLServer报服务端仅支持TLS10
通过查阅网上资料大部分说原因是Java认为TLSv1不太安全所以在java.security中通过jdk.tls.disabledAlgorithms配置禁用了TLSv1, TLSv1.1,导致Java应用作为SQLServer客户端连接服务时使用的TLS13, TLS12协议,但是SQLServer服务端可能版本比较老或者配置了仅支持TLS10导致报上述错误。修改基础镜像中的/usr/java/latest/jre/lib/security/java.security文件内容,替换成之前的内容。原创 2024-08-14 18:25:23 · 395 阅读 · 0 评论 -
ES查询报错ContentTooLongException排查过程
(因为这里使用es的方式不是直接使用spring原生方式,而是自己包装了一层,根本原因可能还是自己的包装的实现里面有一些不合适的地方,用search去做searchAggregationsCount,search内就会走上兜底size为10000的逻辑,当然直接使用开源的spring方式集成可能也会有类似的问题)到这里问题其实比较清晰了,经过对比我手动请求es的命令里面没有带size,而程序请求es的报文里面带了size,导致将文档内容在hits中响应了回来,导致响应超大。原创 2024-07-17 17:48:00 · 331 阅读 · 0 评论 -
应用定时主动触发FGC问题排查
2、还是看不到具体来源,基于10小时这个数字太特殊直接在网上搜索看到是cxf-core三方依赖会主动触发,查看服务确实引用cxf依赖,可以通过参数org.apache.cxf.JDKBugHacks.gcRequestLatency=true关闭固定Full GC的逻辑。发现服务启动后会立刻主动触发一次,就服务重启时立马开始监听System.gc方法的调用堆栈,发现调用来源是sun.misc.GC$Daemon.run(GC.java:109)原创 2024-07-03 10:52:21 · 394 阅读 · 0 评论 -
使用ApacheHttClient时偶现异常ConnectionPoolTimeoutException
当使用HttpClientBuilder创建自定义的HttpClient的时候没有主动setConnectionManager导致org.apache.http.impl.client.HttpClientBuilder#build内兜底使用默认逻辑创建connectionManager的defaultMaxPerRoute只有2,maxTotal也只有20。当请求量稍一大且响应慢时连接池就会不够用,进而报错ConnectionPoolTimeoutException。原创 2024-07-01 21:05:40 · 165 阅读 · 0 评论