当前位置: 首页 > wzjs >正文

经典网站建设案例独立网站

经典网站建设案例,独立网站,做家乡网站代码,公司做网站济南文章目录 背景分析现象排查定位数据比对解决方案反思背景 背景:今天下午初始化经营体数据到预发环境,需要将生产环境的经营体表的数据同步到预发环境,同步结束后。再调用批量禁用接口,目的是将原来一级经营体【中国移动】下的所有经营体禁用掉,然后导入Excel文件将新的省…

文章目录

  • 背景
  • 分析
  • 现象
  • 排查
  • 定位
  • 数据比对
  • 解决方案
  • 反思

背景

背景:今天下午初始化经营体数据到预发环境,需要将生产环境的经营体表的数据同步到预发环境,同步结束后。再调用批量禁用接口,目的是将原来一级经营体【中国移动】下的所有经营体禁用掉,然后导入Excel文件将新的省份公司经营体重新导入到系统中。

使用到的相关表: org_venture 、org_venture_business_configuration 、org_venture_business_type_index_rel、org_venture_employee_relation

分析

这个需求简单可以分三步

  • 第一步:将生产环境的上面四张表的数据各自复制一份,发给运维人员。在预发环境上,运维人员会先清空上面四张表的数据,然后再将研发人员提供的四张表的数据导入到数据库里
  • 第二步:调用批量禁用接口,目的是将原来一级经营体【中国移动】下的所有经营体都给禁用掉
  • 第三步:导入Excel文件将新的省份公司经营体重新导入到系统中

现象

在所有的配置都执行结束后,结果调用getVenturePathByEmpId这个接口报如下错误,getVenturePathByEmpId这个接口的作用是根据人员ID遍历树去查询当前人员对应的经营体的类目链

注意:这里面涉及到遍历树查询,这就为后来的报错埋下祸根

结果就是该接口在pre环境上执行时报堆栈异常错误
在这里插入图片描述

排查

思考:这里面只有三个操作步骤,既然这样,那为啥不针对每个步骤逐一去排查问题呢?

步骤1:既然我们的数据是从生产环境上copy下来的,那样的话我们就去生产环境上去查看是否存在数据问题
通过去比对生产环境上的数据,没发现啥问题

思考:那会不会是调用批量禁用接口的时候导致的呢?

步骤2:验证批量禁用接口
结果:没发现任何异常
思考:既然前两个步骤都没有问题,那么会不会是代码的问题?

步骤3:debug排查代码
开始是debug去排查代码,结果就是查了半个小时,代码端看不出来啥问题(接口是递归调用,所以debug排查的时候比较费力气)
。。。
若干时刻后,终于发现了一个惊人的问题,经营体的ID值怎么和他的父经营体相同,多年的开发经验告诉我这应该就是导致堆栈异常的原因。经过深入排查后,最终定位问题就是【id=parent_venture_id】这个问题导致的

定位

导致堆栈异常的问题是找到了,但是它两是怎么相等的,代码问题?还是操作问题?
如果是代码问题:我把全部debug走了一遍,没有发现任何地方设置二者值相同的逻辑
既然不是代码的问题,那应该就是操作的问题了

验证操作问题
首先在生产环境上执行sql: select id, venture_name, parent_venture_id,update_time from org_venture where id = parent_venture_id。没有发现有 【id=parent_venture_id】的数据
在这里插入图片描述
那么就去pre环境去排查数据源,结果发现了问题
通过sql: select id, venture_name, parent_venture_id,update_time from org_venture where id = parent_venture_id
发现有好几个经营体的ID和其parent_venture_id相同。

初步结论

  • 通过分析代码轻松得知,因为二者相同的缘故导致查询的时候陷入嵌套死循环,由于程序一直执行,自然就把内存资源全部都耗光了,最后报堆栈异常
  • 既然是这样的话,那么导致【id=parent_venture_id】数据相同的问题只有两种情况了,要么就是从生产环境上复制数据到pre环境有问题,要么就是Excel导入的新数据有
http://www.dtcms.com/wzjs/478726.html

相关文章:

  • 婚纱网站论文长春网站建设方案咨询
  • php在动态网站开发企业营销推广怎么做
  • 企业建设网站的目标超级外链工具 增加外链中
  • 做外贸公司网站最新国际足球世界排名
  • 德州建设网站视频外链在线生成
  • php网站做代理深圳网站搜索优化
  • 浙江网站建设哪家权威网站设计制作教程
  • 免费加速器永久免费版不用登录爱站seo综合查询
  • 给小公司做网站赚钱么舟山百度seo
  • 源美网站建设关键词推广优化
  • 兰州工业发展建设有限公司网站搜索广告
  • 网站开发需要提供哪些资料网站建设的步骤
  • wordpress 购物 手机站怎样优化网络
  • 福州营销网站建设团队0元免费做代理
  • 做seo推广公司网站seo优化外包顾问
  • 网站设计公司哪家便宜免费制作logo的网站
  • 哈尔滨h5建站中文网站排名
  • 科技公司网站设计服务今日冯站长之家
  • 中山网站建设seo135排超最新积分榜
  • 制作网络平台多少钱太原高级seo主管
  • wordpress网站备份还原网络运营需要学什么
  • 无锡市新吴区住房和建设交通局网站平台搭建
  • 青海城乡建设厅网站sem与seo
  • 武汉p2p网站建设价格谷歌搜索关键词排名
  • 网站传送门怎么做东莞营销网站建设优化
  • 网站建设部门今日热点新闻头条
  • 那个网站可以做司考真题企业网站seo优化
  • 甘肃模板型网站建设关键词生成器在线
  • 平面设计网站排行榜零基础能做网络推广吗
  • 有哪些做数据分析的网站长沙seo优化报价