- 博客(7)
- 资源 (4)
- 收藏
- 关注
原创 使用jstack的一次线上问题排查,statcktrace工具的灵活运用
背景计费服务是为 oms 和 tms 提供计费策略的服务,它会根据不同的场景获取不同的基础数据,组合不同数据派发给 bms 进行计费。但是最近服务不稳定收到大量告警报 502服务不可用,我们需要去排除问题。方案添加节点最初猜测是可能服务调用量大,导致服务不可用,我们尝试添加了新节点,发现服务质量没有改善JVM问题在线排除JVM 的问题。通常我们使用的工具是jstack jstat 查看 GC 情况,分析是不是有 FULLGC 导致问题。 jstat -gc 11 5s...
2021-03-16 13:30:46 160
原创 Intellij Http Client 集成测试,不再依赖网页联调了
背景在研发开发功能中除了编写单元测试外, 需要编写集成测试代码在开发阶段调试功能, 在提测阶段做冒烟测试, 在联调阶段发现问题. 通常使用的工具是postman或者高级点curl. 这样的一些手段有下面几个问题.知识共享. 通常开发是在本地编写postman的临时脚本, 这个脚本是自己使用很少分享给其他小伙伴. 其他小伙伴有类似的测试, 需要自己写脚本. 知识积累. 本地开发脚本通常是临时写几个运行成功就丢弃, 以后发现了问题又重新再写. 知识不能积累下来. 版本管理. 写的postman的脚本
2021-03-16 13:17:37 150
原创 apollo本地模式启动,加速启动项目
apollo本地模式由于老项目依赖apollo,方便本地服务的启动,建议使用apollo的本地模式,能够提高服务启动速度,同时去除对apollo配置中心的网络依赖。启用apollo本地模式 # 在tomcat的启动vm参数中增加以下环境变量-Denv=Local 启动本地调试模式后,apollo会使用本地配置,不会再从服务器拉取配置。可以通过以下日志输出来确认apollo是否运行在本地模式下: property'env'.2020-08-2500:20:55|..
2021-03-16 13:12:23 725
原创 redis的分布式锁一定不要放在mysql事务内部
在项目开发中使用了一个单号生成的方法统一进行单号管理结果有一天发现单号出现了大量重复,以下记录排查过程实现代码V1@Transactional(rollbackFor = Exception.class) // ????public String createV2(UnifyCreateReq req) { 。。。逻辑处理 RedisLock lock = new RedisLock(appRuntime.buildPrefixKey("create_sku", .
2021-03-16 13:04:10 691
原创 nginx报504超时
起源:nginx里面代理了两个应用,有个应用用于tomcat服务,里面有一个接口执行很多sql语句,一般要执行2分钟左右;本地测试的时候没有问题,放在nginx服务器上就出现了超时的现象,经检查是nginx报出的;解决方案:在nginx里面的nginx.conf里面配置 fastcgi_connect_timeout 300; fastcgi_send_timeout 3
2018-01-31 10:47:14 365
原创 mybatis中mysql编写记录
在mybatis中对sql的编写会有一些不同之处,以下记录在开发过程中遇到的情况进行描述:1.查询时候对日期进行格式化匹配:如需要查询符合年月日的数据DATE_FORMAT(now(), '%Y-%m-%d')2.返回主键useGeneratedKeys="true"3.传入集合,并针对集合进行遍历 parameterType="java.util.List"
2018-01-30 13:41:36 183
转载 jsp标签中shiro的使用
Shiro提供了JSTL标签用于在JSP/GSP页面进行权限控制,如根据登录用户显示相应的页面按钮。导入标签库Java代码 @taglib prefix="shiro" uri="http://shiro.apache.org/tags" %> 标签库定义在shiro-web.jar包下的META-INF/shiro.tld中定义。 guest标
2017-01-18 13:56:10 4630
dubbo微服务demo(微服务+web工程)
2018-01-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人