晚上日常发布,无奈将应用发挂十几分钟,复盘一下,聊聊一下一些感悟。

晚上发布是一个渠道应用,主要作用为是去支付机构端进行银行卡扣款。

由于这个过程需要报文信息需啊哟在互联网中传输,所以需要进行相应的加签处理。

这里的银行卡等敏感信息需要采用 AES 加密,由于用于加密的私钥长度大于128位,JDK 自带的加密类将会抛出

java.security.InvalidKeyException: Illegal key size

从而导致加密失败。

加密工具类内部吃掉该异常,返回一个空字符串。然后我们上送给支付机构后,对方返回解密失败,从而导致此次交易失败。

解决办法很简单,更换如下目录的这两个 jar 包 local_policy.jar, US_export_policy.jar

${java_home}/jre/lib/security

参考如下:https://blog.csdn.net/wangjunjun2008/article/details/50847426

解决办法

上面说过只要更换这两个 jar 包就可以就解决问题,但是生产环境技术人员是没有权限,只能通过邮件审批,才能让运维人员去替换。

这个过程中涉及人员沟通,操作,快一点可能也要半小时。这让应用挂半小时,明天肯定得背个黑锅,肯定不行,得另想一个办法。

马上回滚应用,那也没办法,问题不是出在发布的应用上,而是 JDK 上。

有了,我们机器 Java 命令调用的是 JDK8 的路径,那我只要写死 java 命令绝对路径,就可以使用 JDK7 的路径,这样交易就可以正常进行。

想到了办法,立刻开干,替换了启动脚本的中 java 命令,成功将应用启动,交易运行也一切正常。

这时我们就可以慢慢来了,发送申请邮件,让运维人员替换 jar 包,然后再重新将之前写死绝对路径改回来,重新启动。

聊聊感想

这个问题其实在之前上线之处已经注意到了,当时我们使用 JDK1.7 ,上线之前已经更换了这两个包。但是前一段时间我们更换默认了 JDK,更换成 JDK8,该 JDK 没有更换这两个包,于是就炸了。

复盘一下今天的问题,现在回想,测试过程中,其实碰到过这个问题。但是当时我并没有引起重视,因为上次测试环境也更换过 JDK7 这两个 jar 包。所以我片面的认为该问题是公私钥配置的问题,所以就没有细查,最终导致该问题被带到了生产。

所以测试过程中,发生小问题,一定要引起重视,也不要过分自信认为都是小事,没什么影响。

刚发生这个问题的时候,说实话内心很慌,毕竟所有交易都会被阻塞。幸好这个问题也不是第一次碰到,很快就能想到解决办法。

但是如果是第一次碰到这类问题,根本没有经验,短时间内想不到解决办法咋办?

当然马上求助周围的同事,并跟自己的 Leader 反馈下这个问题。大家一起集思广益,解决这个问题。

不要想着自己死扛这个问题,自己一个人没思路的解决问题,很耽误时间的。

之前有个同事,生产出现问题,就喜欢一个人解决。但是如果你有办法解决,那也没问题。怕就怕这个同事不反馈,一个人夯吃夯吃在解决,到头来还是没解决。

这样就又拖延问题,很有可能就会小问题就会升级为大问题。说实话,这样说不准会让你的 Leader 反感。

特别推荐一个分享架构+算法的优质内容,还没关注的小伙伴,可以长按关注一下:长按订阅更多精彩▼如有收获,点个在看,诚挚感谢

一不小心又把应用发挂了,复盘一下这十几分钟的黑暗时刻相关推荐

  1. 自动发邮件的程序 c语言,5分钟!教你用C语言发送邮件:附送源码+教学!

    5分钟!教你用C语言发送邮件:附送源码+教学!-1.jpg (10.71 KB, 下载次数: 0) 2018-9-3 02:21 上传 关注<一碳科技>,获取更多知识! 前言 相信年夜家都 ...

  2. Facebook 发币 Libra;谷歌十亿美金为穷人造房;第四代树莓派 Raspberry Pi 4 发布 | 开发者周刊...

    [CSDN编者按]六月最后一周的科技圈,就像北京的桑拿天一样热闹.Facebook发币.Google 10 亿美金给穷人造房子,京微力小程序大赛如火如荼地举行......最近一周就有哪些开发者新闻呢? ...

  3. CSDN周刊:Facebook 发币 Libra;谷歌十亿美金为穷人造房;第四代树莓派 Raspberry Pi 4 发布

    [CSDN编者按]六月最后一周的科技圈,就像北京的桑拿天一样热闹.Facebook发币.Google 10 亿美金给穷人造房子,京微力小程序大赛如火如荼地举行-最近一周就有哪些开发者新闻呢?就在本期开 ...

  4. 宝安日报:联诚发跨界创新“追光”十九载!

    世界一流声光电智造一体化服务商.国家级高新技术企业.国家级专精特新"小巨人"企业.博士后创新实践基地.深圳自主创新百强企业--这些熠熠生辉的关键词,是位于宝安区航城街道的深圳市联诚 ...

  5. twitter全自动发推_我如何在5分钟内自动创建FreeCodeCampers的Twitter列表

    twitter全自动发推 by Monica Powell 莫妮卡·鲍威尔(Monica Powell) 我如何在5分钟内自动创建FreeCodeCampers的Twitter列表 (How I au ...

  6. 展品牌力量•树行业典范,联诚发一举夺得亮点奖“十大智慧路灯品牌”

    5月23日下午,"展品牌力量 树行业典范--2021中国灯饰照明行业品牌大会"在灯都古镇·华艺广场11楼隆重举行.政府领导.产业专家.优秀厂家.超级经销商.商协会代表及权威媒体代表 ...

  7. 李彦宏发全员信:在国家抗击疫情的特殊时刻,每个人都要尽职尽责

    2月3日春节假期延长开工的第一天,今天百度创始人李彦宏发布了"2020开工信".在致全体员工的内部信中,李彦宏呼吁百度"无论是高管还是基层员工,都要迅速的重新专注投入到工 ...

  8. 如何评估一项技术是否值得长期投入

    源 | 阿里巴巴中间件 文  |  简锋 "每个人的时间都是有限的,在有限的时间里选择一项值得投入的技术会变得尤为重要." 笔者从 2008 年开始工作到现在也有 12 个年头了, ...

  9. Redis入门到实战

    redis入门与实战 一.Nosql概述 1.为什么要用Nosql 1.1 单机 MySQL 的美好时代 来源博客(https://www.cnblogs.com/lukelook/p/1113520 ...

最新文章

  1. 一位年轻董事长给大学生的18条好建议
  2. Micropython TPYBoard 智能温控小风扇资料分享
  3. JavaFX BorderPane布局代码示例
  4. Python3 Flask+nginx+Gunicorn部署(上)
  5. 车载导航系统中常用物理量和单位
  6. [小技巧]为Atlas AutoComplete加上滚动条
  7. Android Java类编写规范+优化建议
  8. 加密+拜占庭将军_简单读懂拜占庭容错
  9. 手写Spring+demo+思路
  10. 《自然语言处理实战入门》---- 停用词 知多少?
  11. 【论文笔记】 ICRA 2021 通用无监督激光里程计 Self-supervised Learning of LiDAR Odometry for Robotic Applications
  12. 中国手机摄像头产业链
  13. 【转】对前端质量保障的思考 - Barret Lee
  14. 在线JSON格式化美化
  15. 写得太好了,大约《越狱》批评(发布)
  16. springboot点餐微信小程序系统毕业设计源码221144
  17. 中国电信无线网服务器,中国电信网上营业厅
  18. 精品丨DAX性能优化问题
  19. 怎么在第一个 PDF 文件的中间,插入第二个 PDF 文件的内容?
  20. python趣味编程100例-Python游戏趣味编程

热门文章

  1. java common.lang_Java 开源工具 Apache Common Lang
  2. 如何在电脑桌面添加计算机网络等,如何实现在电脑桌面上添加文字提醒
  3. poj1386(判断一个有向图是否存在欧拉回路)
  4. acwing1086||HDU4507数位dp[恨7不成妻]
  5. 1008c语言答案,c语言大作业题目01008.doc
  6. matplotlib 子图超过4个_走进Matplotlib世界(四)
  7. kuangbin带你飞专题合集
  8. F - Prime Path POJ - 3126
  9. java正则表达式练习题目
  10. 贵州高二会考计算机考试题,20167月贵州普通高中学业水平考试会考试题