下单接口调优实战,性能提高10倍

  • 时间:
  • 浏览:0
  • 来源:5分6合APP下载_5分6合APP官方

Djava.rmi.server.hostname填写JAVA程序运行所在服务器的IP地址,-Dcom.sun.management.jmxremote.port=7969是指定JMX监控端口的,这里是7969。

3、增加应用的MYSQL连接数;

导致 分析锁的代码是HttpClient的execute办法,该办法在执行的随后,一个 劲在等候获取HTTP连接,通过查看源代码,发现岂有的是那末 使用连接池,醉了。赶紧加进如下代码:

在压测的过程中,做一下程序运行dump,共同利用nmon观察应用服务器CPU的负载情况报告。

好了,现在亲戚亲戚朋友都要使用Jmeter来对下单接口进行压测了。都要先用500程序运行并发压,执行时间是1分钟。 

本文作者:王练

库存记录通常指在一张独立的库存表,可能性创建订单的办法,是有一个 大事务,就说 就会导致 分析某条库存记录都不能了当整个createorder()办法执行随后,数据库行锁才会被释放,在什儿 期间,某些程序运行是无法对这条库存记录进行写操作的。或者 亲戚亲戚朋友都要在reduceSkuStock()中,再开有一个 事务,操作完这条库存记录后,立刻释放锁,就说 应该都要提高某些性能。为了验证否有可能性事务的导致 分析导致 分析下单接口慢,亲戚亲戚朋友都要直接将createOrder()办法的事务加进,再压测一下。

2、观察下单接口执行的过程中,FULL GC指在的次数;

本文来自云栖社区合作办法办法伙伴“开源中国”

压测结果发现,下单接口的TPS提高了一倍,CPU也上去了不少,或者 仍然过高 理想,代码里,应该还有某些的锁。再次做程序运行dump,又发现了有一个 锁。

重新启动程序运行后,打开本地的(我用的是Window10)jvisualvm,加进JMX配置。配置成功后,都要点击程序运行那个tab,可能性亲戚亲戚朋友要做程序运行dump,观察程序运行的执行情况报告。

负载很低,将程序运行并发调整到5000后,CPU还是上不去,就说 的话,初步都要判断,代码里有锁。 通过观察dump文件,发现如下信息:

原文链接

触发什儿 lock的业务代码是reduceSkuStock办法。通过阅读代码,发现reduceSkuStock被包在有一个 大事务里边。

腾讯云Mysql

为了监控服务器和服务器中JAVA程序运行,亲戚亲戚朋友都要开启JMX,都要在JAVA程序运行启动的随后,加进如下哪几个参数:

什儿 是下单接口的逻辑都不能了大改的情况报告下的优化方案,一般来说,库存操作应该是单独的服务,都要单独优化的。而单纯的下单逻辑也是都要优化的。

1、打印下单接口的所有SQL,或者 逐一进行explain操作,看看有那末 全表扫描的的话可能性没用到索引的SQL的话;

让执行库存操作的程序运行执行随后,赶紧释放行锁。就说 做有的是个风险,就说 库存扣减成功后,下单失败了。不过什儿 情况报告比较少,可能性当时的下单接口中,大次要业务逻辑有的是前面做好判断了,到达插入订单的代码时,就就说 单独的insert了,除非数据库挂了,不然不让跳出下单失败的情况报告。

下单属于写接口,大次要情况报告下,瓶颈都出在DB里,程序运行可能性有的是等候DB锁的释放。为了验证什儿 想法,亲戚亲戚朋友都要使用Jmeter和jvisualvm来验证一下。

好了,到了这地方,亲戚亲戚朋友都要回到前面,来处理库存什么的什么的问题了。可能性老板说,都不能了大改,或者 让我在reduceSkuStock办法上,再开有一个 事务。

腾讯云2核4g的服务器1台

在开发环境下,经过调优后,下单接口的TPS提升了3倍左右,当然可能性开发环境的数据库和应用服务器都比较差,也会对TPS有影响的。当时优化随后,在生产上进行了压测,发现TPS提升了10倍。

再次压测后,发现代码里可能性那末 锁了。TPS提升了5倍。或者 接下来还得做几件事情:

猜你喜欢

游客uzeogvglzl7a4的主页

MaxCompute生态文章:2丨粉丝:64241丨话题:0文章:12丨粉丝:64328丨话题:1文章:30丨粉丝:63040丨话题:0阿里云ET专家,重点在智能语音、人脸识别

2020-02-25

成功运作一个开源项目的15个要点

13、管理知识产权和版权文档化项目的代码格式规则(使代码格式化预设易于访问),对测试覆盖面、开发措施、软件和所需工具的期望,与项目团队联系的渠道以及针对潜在贡献者的这些 重要

2020-02-25

有技术,爱写博客?那就来云栖社区吧!无人机大奖等你拿!

所有参加活动的技术亲(符合规定的),均可获得150元阿里云通用代金券参与法律法律依据:奖品设置:让人跟阿里专家同场竞技“内容最优质量”奖(3名):活动流程:更能不能 通过持续

2020-02-25

全球获得诺贝尔文学奖的有多少人

台湾残疾青年郑丰喜他真是先天身患小儿麻痹,落得双腿残疾,差许多就被家人背叛,幸而爷爷与二婶等人的呵护与庇护,才得以新生,能能从艰难困苦的人生境遇中成长起来。已经 来家贫困,幼

2020-02-25

技术流|使用开源项目的正确姿势:如果没有你要的轮子,那就重新造吧!

还是以上面提到的TT为例:这里让一群人的经验是聚焦于有无满足业务,而不能自己过于关注开源方案有无牛逼。什么都有有让一群人的建议是太少改动原系统,而是要开发辅助系统: 监控,报警

2020-02-24