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

  • 时间:
  • 浏览:1
  • 来源:uu快3APP_uu快3官方网址

在压测的过程中,做一下守护任务管理器dump,同时利用nmon观察应用服务器CPU的负载状况。

压测结果发现,下单接口的TPS提高了一倍,CPU也上去了不少,后来仍然欠缺理想,代码里,应该还有或多或少的锁。再次做守护任务管理器dump,又发现了有有有4个锁。

腾讯云Mysql

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

好了,现在亲戚亲戚亲戚当当让我们都能够使用Jmeter来对下单接口进行压测了。都能够先用3000守护任务管理器并发压,执行时间是1分钟。 

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

好了,到了这地方,亲戚亲戚亲戚当当让我们都能够回到前面,来外理库存什么的问题了。肯能老板说,必须大改,后来你会在reduceSkuStock法子上,再开有有有4个事务。

你这个 是下单接口的逻辑必须大改的状况下的优化方案,一般来说,库存操作应该是单独的服务,都能够单独优化的。而单纯的下单逻辑也是都能够优化的。

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

下单属于写接口,大帕累托图状况下,瓶颈都出在DB里,守护任务管理器肯能还会等待时间DB锁的释放。为了验证你这个 想法,亲戚亲戚亲戚当当让我们都能够使用Jmeter和jvisualvm来验证一下。

原文链接

本文来自云栖社区商务公司合作 伙伴“开源中国”

1、打印下单接口的所有SQL,后来逐一进行explain操作,看看有必须全表扫描的语录肯能没用到索引的SQL语录;

让执行库存操作的守护任务管理器执行后来,赶紧释放行锁。后来做还会个风险,只是我库存扣减成功后,下单失败了。不过你这个 状况比较少,肯能当时的下单接口中,大帕累托图业务逻辑还会前面做好判断了,到达插入订单的代码时,就只是我单独的insert了,除非数据库挂了,不然不用再次出现下单失败的状况。

触发你这个 lock的业务代码是reduceSkuStock法子。通过阅读代码,发现reduceSkuStock被包在有有有4个大事务里面。

负载很低,将守护任务管理器并发调整到3000后,CPU还是上不去,后来语录,初步都能够判断,代码里有锁。 通过观察dump文件,发现如下信息:

本文作者:王练

为了监控服务器和服务器中JAVA守护任务管理器,亲戚亲戚亲戚当当让我们前要开启JMX,都能够在JAVA守护任务管理器启动的后来,再加如下十几个 参数:

重新启动守护任务管理器后,打开本地的(我用的是Window10)jvisualvm,再加JMX配置。配置成功后,都能够点击守护任务管理器那个tab,肯能亲戚亲戚亲戚当当让我们在做守护任务管理器dump,观察守护任务管理器的执行状况。

库存记录通常地处一张独立的库存表,肯能创建订单的法子,是有有有4个大事务,后来就会原困某条库存记录必须当整个createorder()法子执行后来,数据库行锁才会被释放,在你这个 期间,或多或少守护任务管理器是无法对这条库存记录进行写操作的。后来亲戚亲戚亲戚当当让我们都能够在reduceSkuStock()中,再开有有有4个事务,操作完这条库存记录后,立刻释放锁,后来应该都能够提高或多或少性能。为了验证与非 肯能事务的原困原困下单接口慢,亲戚亲戚亲戚当当让我们都能够直接将createOrder()法子的事务再加,再压测一下。

原困锁的代码是HttpClient的execute法子,该法子在执行的后来,有4个劲等待时间时间获取HTTP连接,通过查看源代码,发现果真必须使用连接池,醉了。赶紧再加如下代码:

再次压测后,发现代码里肯能必须锁了。TPS提升了5倍。后来接下来还得做几件事情:

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

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

猜你喜欢

在阿里做了五年技术主管,我有话想说

从支付宝第一位实习生到CTO,他有什么话想说阿里研究员吴翰清:世界须要什么样的智能系统?|7月15号云栖夜读阿里CEO张勇首谈商业未来:大数据将成新能源云无边界,阿里云混合云数

2020-02-22

中文分词算法工具hanlp源码解析

一起去这一 措施速度非常快,插入和查询的时间不是O(1)。doubledTemp=(double)1/MAX_FREQUENCY+0.00001Viterbi最短路径有向图i

2020-02-22

怎么理解<神曲>思想和艺术上的两重性?

展开完整性《神曲》二重性首先表现在何如看待祖国的前途命运。一方面但丁认识到统一意大利是拯救祖国的唯一途径,另一方面他所设想的统一办法却是空想的、错误的,把希望寄托在好皇帝和朋友

2020-02-22

求鬼泣1234游戏剧情中文百度云分享

可选中另另有一个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问提报告 。扫描二维码下载换一换追问有点硬推荐内容通过百度网盘分享,展开详细优酷详细详细都是

2020-02-21

windows server系统,登录系统提示按下 ctrl+alt+delete

4,点击“选着”即可完成设置。WindowsServer系统,为了保证运维人员可靠,除理线程池自动操控,新装的系统往往要求手动输入ctrl+alt+delete实现进入登录页面

2020-02-21