随笔分类 -  生产项目采坑篇

生产项目中遇到的一些问题
摘要:PgageHelper使用不当导致sql报错 1、发现接口调用异常 查看原因发现出现多个limit导致报错 org.springframework.jdbc.BadSqlGrammarException: select * from table where xx order by cl.plan_l 阅读全文

posted @ 2022-12-02 18:04 FLGB 阅读(398) 评论(0) 推荐(0) |

摘要:问题描述: 生产上Es根据一个时间字段搜索,却没有返回数据 问题分析: 根据命令: GET indexName/_mapping 查看 #GET indexName/ _mapping { "indexName": { "mappings": { "properties": { "channel_s 阅读全文

posted @ 2022-12-01 18:02 FLGB 阅读(617) 评论(0) 推荐(0) |

摘要:问题描述: 项目发版时,考虑到新增表结构和字段应该对功能无影响,在白天采用蓝绿发布项目,先发一期环境,二期环境对外服务,但是却导致一期环境新功能出现异常无法验证 排查措施: 排查生产日志,定位代码,代码逻辑正常,uat正常无法复现问题 进一步换角度排查: 苦思冥想,考虑sql层面新增表结构字段和这段 阅读全文

posted @ 2020-12-20 01:07 FLGB 阅读(114) 评论(0) 推荐(0) |

摘要:收到业务告警邮件,某个跑批未执行成功。结果是生产上跑批到某个时间点时,突然所有跑批都断批了,查看日志quartz也没有了调度日志,spring-batch也没有报错日志 排查了: 一、查看最后一次跑批内容、最后一条日志内容(info级别),考虑到无影响 二、查看uat是否有此现象,uat正常,对比生 阅读全文

posted @ 2020-11-04 23:13 FLGB 阅读(410) 评论(0) 推荐(0) |

摘要:有个项目小伙伴,为了防止当前跑批未跑完,下次跑批又开始跑,就写了个锁,作为防重机制, redisCluster.setnx(key,value)== 0 来判断 (其中value是uuid+时间戳) SETNX key value # job 设置成功 返回1 (integer) 1 redis> 阅读全文

posted @ 2020-11-04 22:42 FLGB 阅读(266) 评论(0) 推荐(0) |

摘要:一、现象 换成Tomcat8后出现cookie报错 二、分析 经异常去查看源码发现,Tomcat8对cookie校验规则改变,更为严格的校验了cookieHeader不允许有, 日志中的[XXXXX,XXXX]被当做异常处理。 三、解决方案 1.该异常不影响系统运行,可以注意打印cookie的格式 阅读全文

posted @ 2020-05-23 16:08 FLGB 阅读(449) 评论(0) 推荐(0) |

摘要:一、现象 对接第三方商户,压测该接口,发现tps刚上来就出现响应时间骤然上升,性能严重与预测不符。 二、分析 本地我们走一套公共报文封装出去,考虑到其他接口正常,考虑应该是第三方商户接口的问题。 经沟通排查,初步发现原因。第三方商户报文组装、拆解存在大量字段反射,性能开销大 三、解决方案 重写代码组 阅读全文

posted @ 2020-05-23 16:01 FLGB 阅读(319) 评论(0) 推荐(0) |

摘要:一、现象 当上传附件时,系统反复出现宕机问题(内存溢出)。 二、分析 dump线程日志和GC日志,发现JVM启动参数未设置,初始内存较小,当附件上传时,附件较大,内存剧增,来不及扩容就OOM了。 三、解决方法 设置初始JVM启动参数(生产上应该先考虑项目JVM初始参数设置值,不是等到出问题了再跑去解 阅读全文

posted @ 2020-05-23 15:53 FLGB 阅读(243) 评论(0) 推荐(0) |

摘要:一、 现象 用户打开消息推送有概率报错,后续发现推送消息阅读数、点赞数无法正常更新,mysql报警有行锁, DBA抓到有锁表语句,kill该语句未正常恢复,elk日志有大量的java.sql.SQLException: connection holder is null 重启应用恢复 二、分析 根据 阅读全文

posted @ 2020-05-23 15:34 FLGB 阅读(384) 评论(0) 推荐(1) |

摘要:生产上偶尔会出现这样的问题: 这个业务流程中最后时间执行的代码,而且明明日志打印执行成功了,但是为什么数据库值不对。(更新时间有时候因为各种原因,比如,客户端根据更新时间做了缓存,非关键字段信息更新不会更新更新时间、历史代码遗留很多地方更新个别底字段不做更新更新时间操作、其他原因等都没有更新更新时间 阅读全文

posted @ 2020-05-13 22:42 FLGB 阅读(284) 评论(0) 推荐(0) |

摘要:问题描述:因代码判断、截取问题,导致在处理特殊图片名称时,部分申请的图片上传异常,合成影像缺失,业务要求手动给到每份申请的图片,去人工合成。 解决方案: 1.找运维,运维会让提事件单,(事件单这东西能没有最好)才会帮忙去拉取生产图片,但现在特殊图片的有几十份,还非常散,我们图片根据日期去建立,每天一 阅读全文

posted @ 2020-05-13 22:08 FLGB 阅读(188) 评论(0) 推荐(0) |

摘要:生产上Tomcat出现 Connection has already been closed.问题,但是在uat测试是好的! 遇见两次: 1.某个程序dao中执行逻辑异常复杂,有时候需要执行一分多钟,uat正常执行,生产上个别执行时间长的会出现Connection has already been 阅读全文

posted @ 2020-05-13 21:52 FLGB 阅读(8694) 评论(0) 推荐(0) |

摘要:1. 图片资源优化 上传图片原来保存一份压缩包和一份图片,后台使用图片,上传下载使用压缩包, 造成内存占用过多,保存时间较短,业务经常提事件单回复图片,供下游流转。优化后上传下载只保留图片,加压再传输。 偶尔出现图片花的情况,客户端和后台通过加签方式来保证传输的完整性。、 2. 大文件导出,使用的传 阅读全文

posted @ 2019-12-17 20:56 FLGB 阅读(145) 评论(0) 推荐(0) |

摘要:接口偶然出现调用失败,偶然成功,查询日志有正常有失败, 查询节点服务器发现有台服务器上节点请求全部异常。重启该节点后服务运行正常。 阅读全文

posted @ 2019-12-17 20:25 FLGB 阅读(485) 评论(0) 推荐(0) |

摘要:原因:经查找数据库连接类utils工具类中未释放连接。 uat未复现原因,用户量少 原服务器未出现原因,weblogic 服务器中有自动连接回收,而切换成了tomcat的服务器,设置了 removeAbandoned=“true”, removeAbandonedTimeout ='60'参数(默认 阅读全文

posted @ 2019-12-17 20:18 FLGB 阅读(502) 评论(0) 推荐(0) |

摘要:uat 测试结果正确max(9)>max(8),结果生产出现 max(9)>max(12) 原因:字符类型,默认比较第一个字符的ASCII码。 解决方式: max(to_number(varchar2)) 转成number类型即可 阅读全文

posted @ 2019-12-17 20:08 FLGB 阅读(262) 评论(0) 推荐(0) |

摘要:在代码中调用pstm.setString(str) str>4000,这种大字符串插入时出现字符过长插入报错问题。 解决问题:用声明变量方式: <insert id ="insertJson" parameterType="java.util.Map"> Declare jsonStr clob; 阅读全文

posted @ 2019-12-17 20:04 FLGB 阅读(447) 评论(0) 推荐(0) |

博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3