奇门服务商压测,是针对ERP-WMS场景的压测,压测从8月初开始,原则是每一个对接奇门的服务商都要进行至少一轮压测,请服务商尽早压测,越往后压测支持资源越有限。下面请服务商按照各自角色查看相应的注意事项:
1)压测前请服务商先填写压测报名信息:http://tb.cn/jzD9hVx。
2)奇门压测以及双11保障的技术支持都统一在一个群里:奇门仓储业务开发者交流群(旺旺号:132615531),请需要压测的服务商在群里联系奇门小二。
3)奇门压测需要ERP和WMS配成对儿进行压测,一对压测ERP-WMS独立建旺旺群进行压测技术支持。
4)由于今年压测服务商较多,服务器资源有限,因此,先压测的可以申请公有的ECS和RDS,后面参与压测的不保证有压测资源。
5)压测使用的服务器性能尽量和真实商家使用的服务器配置近似,这样的压测结果更真实。
6)压测前请先在ITC中配置联调环境奇门参数(沙箱appkey,压测服务器url,name请加上“2016压测”),和之前的测试环境联调过程一样。接口调用配置的地址请选择奇门沙箱环境(http://qimenapi.tbsandbox.com/router/qimen/service),注意:不要在奇门正式环境进行压测,避免线上压测导致故障!!!
7)完成最终一轮压测后,请不要再随意改动系统及接口逻辑,以免未预知问题造成双11严重事故!若一定要改动,请告知奇门小二,奇门团队协助您评估是否需要重新压测。
1)ERP一定是在聚石塔上部署的,因此压测需要准备好ECS和RDS(两个都需要)。
2)填写压测报名信息,确定好压测对象WMS后,请联系奇门小二独立建群,在ITC发起联调申请,如果之前有过联调配置,可以修改配置信息中的url地址为压测要用的服务器地址。
3)ERP需要做系统调整的地方包括:
a.配置压测工具:聚石塔压测工具配置都是由ERP来完成的(压测工具只和ERP有交互),压测工具PTS会把订单推送给ERP的RDS,WMS的订单是来源于ERP的发货单创建接口;
b.需要由压测工具来触发的操作(如客审、发货单创建等)开放为服务url,配置到压测工具上,压测工具会定时触发;
c.已完成的订单状态要回流给压测工具,压测工具才能知道订单处理完结时间点;
4)聚石塔压测工具具体操作说明可参看:点击查看。
1)WMS有些是没有在聚石塔上部署的,因此不必购买聚石塔ECS&RDS,只需要自己提供一台和正式使用的服务器配置近似的测试服务器进行压测。
2)填写压测报名信息,确定好压测对象ERP后,请联系奇门小二独立建群,在ITC接受ERP发起的压测联调申请。如果ERP不是发起一个新的联调,而只是修改了原有的联调配置参数,那么WMS也可以将该条联调配置的WMS_URL改成压测服务器url。
3)WMS不需要做聚石塔压测工具的配置,订单的来源是ERP的发货单创建接口。
4)WMS需要做系统调整的地方:
a.WMS内部很多流程是需要人工操作的(如打包、拣货等),但是在压测过程中是全自动化的,因此WMS需要将需要人肉操作的部分改造为系统自动化。
b.ERP-WMS压测中主要压发货单创建接口和发货单确认接口,因此流水通知接口、单据取消等其他接口都可以mock掉,改成为接收到ERP的发货单创建的发货单后,内部自动处理,订单改为已发货,通过发货单确认接口回写给ERP。
5)WMS的压测报告需要ERP协助提供,ERP可以看到全链路压测的报告,发货单创建触发的时间节点和收到WMS的发货单确认时间节点,从而判断WMS的系统性能。但WMS没有部署在聚石塔,因此WMS服务器的load,cpu,内存等性能只能WMS自己做监控。
1)确定压测对象,尽量联系单量较大的合作方。约定好压测时间。
2)双方按照压测方案调整系统。
3)系统改造完,确定了双方的压测时间之后,准备压测服务器(ERP需要聚石塔上的ECS+RDS).
4)在ITC配置奇门联调环境参数,ERP发起,WMS接受。
5)ERP调用商品同步接口,一是测试双方系统是否已经打通,二是将压测需要使用的商品信息同步给WMS。
6)先跑几单,看订单是否可以顺利跑完全流程,如果有问题,调整代码。
7)系统正常后,开启压测,拿到压测结果。
8)根据压测情况调优,再压测,直到满意。
1)ERP方的虚线框内是不含奇门的标准ERP流程压测。
2)压测前先进行几笔订单的流转,保障ERP-奇门-WMS链路的畅通,同时ERP也要先将压测中使用到的商品信息同步给WMS。
3)ERP的关键节点包括转单,客审,发货单创建,如果需要压测工具来定时触发,可以将三个接口的请求地址(即URL,压测工具用来触发接口)配置在压测工具上(如下图),如果自己做了触发定时器,则不用做该配置,全置空即可。
4)ERP需要调用订单状态回写接口,回传订单状态,不会写压测报告看不到结果,需要回写的状态至少包括:已转单、已客审、已通知配货、已出库(具体时间点在上图中已标出)。
5)WMS在接收到ERP的发货单创建订单后,需做完系统内部逻辑后,将订单状态自动化改成已发货,然后调用发货单确认接口回告ERP,如果WMS没有定时任务来触发发货单确认接口,可以提供发货单确认接口请求地址(URL),让ERP来协助在压测工具上配置“已出库”接口触发,由压测工具来定时触发该接口。
1. 订单回写状态总共有四个:已转单、已客审、已通知配货(即发货单创建)、已出库(即WMS的发货确认)。在压测工具中ERP来配置对应接口的请求地址,如下图:
2. 回写状态需调用压测工具的接口,具体代码参看:全链路压测产品介绍及使用。
3.订单状态定义:
// 0 => array('key' => 'X_TO_SYSTEM', 'value' => '已转单'), // 1 => array('key' => ' X_SERVICE_AUDITED', 'value' => '已客审'), // 2 => array('key' => 'X_FINANCE_AUDITED', 'value' => '已财审'), // 3 => array('key' => 'X_ALLOCATION_NOTIFIED', 'value' => '已通知配货'), // 4 => array('key' => 'X_WAIT_ALLOCATION', 'value' => '待配货'), // 5 => array('key' => 'X_SORT_PRINTED', 'value' => '已打拣货单'), // 6 => array('key' => 'X_SEND_PRINTED', 'value' => '已打发货单'), // 7 => array('key' => 'X_LOGISTICS_PRINTED', 'value' => '已打物流单'), // 8 => array('key' => 'X_SORTED', 'value' => '已拣货'), // 9 => array('key' => 'X_EXAMINED', 'value' => '已验货'), // 10 => array('key' => 'X_PACKAGED', 'value' => '已打包'), // 11 => array('key' => 'X_WEIGHED', 'value' => '已称重'), // 12 => array('key' => 'X_OUT_WAREHOUSE', 'value' => '已出库'), // 13 => array('key' => 'T_WAIT_BUYER_CONFIRM_GOODS', 'value' => '天猫回写')