提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
原创|行业资讯|编辑:龚雪|2016-04-20 14:52:26.000|阅读 1292 次
概述:除夕那晚你咻一咻了吗?1808亿次互动,16倍的提升,峰值177亿次每分钟的海量数据背后,支付宝是怎么抗住的?
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
除夕那晚你咻一咻了吗?1808亿次互动,16倍的提升,峰值177亿次每分钟的海量数据背后,支付宝是怎么抗住的?
蚂蚁金服旗下的支付宝经过十几年的发展,从简单的支付工具逐步发展成互联网金融平台。2013年余额宝的崛起就是互联网金融平台升级的标志型事件,这一年支付宝顺利进行了PC向无线的布局,可以说架构成功升级到移动互联网金融平台。
经过两年的发展,2015年口碑和社交业务的崛起让支付宝架构进一步在原有架构基础上拓展出支持线下市场和社交的生活互动型架构。2015年钱包9.0的发布,这个里程碑式的项目初步奠定了支付+移动互联网金融+生活互动型混合架构。架构演进示意图如下所示。
2015年12月份,支付宝中标央视。支付宝和央视联合搞活动,是支付宝有史以来最大规模的活动。到底规模多大,当时的我们都没有任何概念。唯一能得到的信息是,历年观看春晚的人数大约在7亿多,支付宝的年度活跃用户4亿多,至于用户的行为习惯,没有任何参考模型。
支付宝团队在这样的情况下,确定了这样一个原则:优先确保核心链路,保证核心链路上用户体验顺畅。万一出现系统容量不足,系统必须能扛住洪峰,不被压垮,即使这种情况下也要给用户尽量友好的提示文案。在确保主链路基础上,还需要照顾到支付宝App内几百个非关键链路,对于非关键链路按照业务重要程度分为4个等级,根据等级分配不同的资源配置。
经过2个月的精心准备,在激动人心的4小时结束后,整个春晚支付宝系统稳稳地扛住了4波洪峰,表现平稳,无论是核心链路还是非核心链路,没有出现任何问题。4个小时内几乎没有用户因为系统、功能上的问题而产生投诉,客服也没有任何咨询压力。
用户“咻一咻”在第二场活动达到高潮,累计互动次数达到1808亿次,是去年的16倍。在当晚的20点38分,“咻一咻”峰值达到177亿次/分钟。支付宝到底是怎么抗住的?
主要是以下5个方面:
这就是为什么很多看起来不是很复杂的网站、APP,却需要大量顶尖高手来开发。并且随着企业需求的日益增长以及对算法的不断深入创新,我们也会越来越多的遇到这样的性能压力问题。
今天,小编就带着大家来认识这几款自动化测试工具,帮助您找出APP的性能缺陷。
Monkey是一款压力测试工具,使用简单。所谓压力测试就是乱点。。。模拟各种各样奇怪的操作,看你的app能不能抗的住。下图所示,是简单命令的用法。
举例来说:
1 android shell monkey -p 你想测试程序的包名 -v 500
比如 我现在想看看android 系统自带的日历应用 在压力下表现如何。
你看,这个模拟器就开始疯狂点击了。当然在实际使用中,一般是将次数调到 几十万次到几百万次,然后下班以后开始跑。第二天来看结果,看看在哪里出了问题。使用非常简单,但是作用也非常有限。不过很可能帮助您找出app的一些隐藏极深的bug。
MonkeyRunner是一款自动化测试工具,需要您编写脚本。例如,测试需要经常用到的冒烟用例,等等。尤其是在4.x以下的机型里,由于无法使用uiautomator,MonkeyRunner几乎就是唯一的自动化测试方法了。
下面我举个例子,比如我们app里最常用的登录功能,我们就可以编写一个脚本来完成。
1 # coding=UTF-8 2 from com.android.monkeyrunner import MonkeyRunner as mr 3 from com.android.monkeyrunner import MonkeyDevice as md 4 from com.android.monkeyrunner import MonkeyImage as mi 5 from com.android.monkeyrunner.easy import EasyMonkeyDevice 6 from com.android.monkeyrunner.easy import By 7 8 #定义安装文件路径 9 installPackage = 'C:\\Users\\Administrator\\ViewPageTest\\app\\build\\outputs\\apk\\app-debug.apk' 10 11 #要测试的程序的包名 12 apkPackageName ='com.example.administrator.viewpagetest' 13 14 #要启动的第一个activity的名称 15 initActivityName=apkPackageName+"/com.example.administrator.viewpagetest.MainActivity" 16 17 18 device = mr.waitForConnection() 19 20 21 #安装apk包 22 device.installPackage(installPackage.decode('utf-8')) 23 24 25 #启动应用程序 26 device.startActivity(component=initActivityName) 27 #防止启动彩票走势图面 需要时间过长 28 mr.sleep(3) 29 30 easy_device = EasyMonkeyDevice(device) 31 32 mr.sleep(3) 33 34 35 36 easy_device.type(By.id('id/username_et'),'zhangsan') 37 # 这里的mr静止 主要用于演示demo上的gif效果 38 mr.sleep(2) 39 easy_device.type(By.id('id/password_et'),'123456') 40 mr.sleep(2) 41 easy_device.touch(By.id('id/submit_bt'),md.DOWN_AND_UP)
然后运行该脚本,效果如下:
大家可以看到,这个脚本可以自行完成:安装apk、输入用户名和密码、点击登录按钮。这里我就不继续往下写这个脚本了。有兴趣的同学可以自己尝试完成日常工作里的那些冒烟用例。
用脚本来自动完成这些测试用例意义重大。毕竟每次版本发布之前,手动点击去完成全部的测试用例是很麻烦的一件事情。
上面我们提到了UiAutomator,那我们就顺便来讲讲UiAutomator。这个工具我个人认为是所有android 程序员都必须要掌握的。有了这个强大的工具,我们就可以底气十足地说“No problem!”
UiAutomator几乎能模拟对android设备的所有操作。使用java语言就可以了,不会编写脚本代码的android 程序员也可以轻松上手。并且android的所有api几乎都能使用,简直酷到没有朋友!比android studio自带的ApplicationTestCase强到不知道哪里去了。具体的使用方法,大家可以参考。
这个工具大家应该都认识,简直是性能测试界的神器,像一个标杆屹立在测试人的心中。既然提到了它,我还是给大家简单介绍一下这款工具。Loadrunner是一款功能最全面最强大的性能测试软件,并且可以进行脚本录制,无需编写脚本了。关于Loadrunner的脚本录制大家可以参考这篇教程。试用下载
大家掌握了这些工具的使用方法后,也可以让自己的APP性能提升很多。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn
通过提供强大的3D CAD数据访问工具并适用于桌面、移动和Web的高级环境3D可视化发动机,HOOPS在提升造船设计和制造流程的效率方面发挥了重要作用。
HOOPS Luminate在汽车行业中的应用具有广泛的潜力和深远的影响。它通过提供高效的3D可视化、虚拟装配与拆解、性能分析、客户定制等功能,帮助汽车制造商在设计、生产和销售过程中提升效率、降低成本并提高产品质量。
在不断发展的软件开发世界中,使工具和框架与最新的平台版本保持同步至关重要,欢迎查阅~
全球航运业对国际贸易至关重要,全球 90% 以上的商品通过海运运输。准确监控和控制这些集装箱的移动对于维持高效的供应链至关重要。手动输入集装箱号码是这一程序的关键部分,它带来了相当大的挑战,例如人为错误和效率低下。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@pclwef.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢