摘要
为保障大型线上软件系统服务质量的可靠性,有必要对其有效地进行大规模负载测试。然而,现有测试工具存在支持的负载生成机制不够丰富、测试资源分配不够经济优化等问题,导致大规模负载测试不易开展。鉴于此,研究了多类型的负载生成、智能化测试资源分配和分布式负载同步控制技术,实现了一款基于OpenStack的大规模云负载测试平台。平台支持协程等负载并发机制,结合多种类型的测试脚本以生成大规模负载;基于负载测试的资源智能预测和多目标优化分配方法,实现面向云负载测试的资源优化分配;使用同步控制算法来保证不同测试主机上网络活动的并行性。该测试平台为测试人员实施大规模负载测试提供了一个功能丰富、经济易用的平台,可有效降低大规模负载测试的实施难度。
In order to guarantee the reliability of service quality of large-scale online software system,it is necessary to carry out a large scale load test effectively.However,some limitations in the existing test tools,such as inflexible load generation mechanisms and uneconomic and non-optimized test resource allocation,make it difficult to conduct large-scale load testing easily.To address these limitations,we study the technology of multi-type load generation,intelligent test resource allocation and distributed load synchronous control,and develop a large-scale cloud-based load testing platform on the ground of OpenStack.The platform supports coroutine-based concurrent load generation and multiple type test script languages.An optimized resource allocation for cloud load testing is implemented by incorporating intelligent resource demand prediction and multi-objective resource allocation optimization.The platform also adopts a synchronous control algorithm to enforce the parallel execution of loads on different test hosts.The whole test system provides a flexible and economical platform easy to use for large-scale load testing,which can effectively reduce the difficulty of conducting large-scale load testing.
作者
晋文明
李昌建
钱巨
JIN Wen-ming;LI Chang-jian;QIAN Ju(School of Computer Science and Technology,Nanjing University of Aeronautics and Astronautics,Nanjing 210016,China;Collaborative Innovation Center of Novel Software Technology and Industrialization,Nanjing 210023,China)
出处
《计算机技术与发展》
2020年第10期47-52,共6页
Computer Technology and Development
基金
中国人民解放军总装备部装发部共性预研共用技术基金(170441402030)。
关键词
负载测试
测试脚本
协程
测试资源分配
负载同步控制
load testing
test script
coroutine
test resource allocation
load synchronous control