
作者|Eaton
导语| 在服务正式上线前,我们需要确保服务上线后的可用性和稳定性,因此对系统的处理能力和稳定性进行全面的测试是非常必要的。压力测试是其中重要的一环,本文将介绍如何使用 TarsBenchmark 对 TARS 服务进行压测。
目录
- 压测简介
- TarsBenchmark 的使用
- 安装部署
- 服务压测
- 总结
压测简介
在标准开发流程中,测试贯彻整个流程,包括但不限于单元测试、接口测试、集成测试、压力测试等。其中压力测试是服务上线之前的最后关键一环。
压测是通过不断给服务接口施加压力,测试服务接口性能,验证服务的处理能力和稳定性。我们可以通过压测对服务的性能进行评估,比如服务最大并发量、可以同时服务用户数等。最后根据测试指标对服务合理部署、扩缩容,或是对发现的性能瓶颈进行优化。
TarsBenchmark 是基于 TARS 生态的一个压测工具,主要用于 TARS 服务的压力测试。并且支持与 TarsWeb 结合使用,提供友好的操作界面对服务进行测试。下面将介绍如何使用 TarsBenchmark 对服务进行测试。
TarsBenchmark 的使用
TarsBenchmark 中包含 NodeServer, AdminServer 两个服务。
NodeServer: 为压测节点服务,用于压测的具体执行,对其他服务进行压测。可以在多个节点上部署,从而实现并行压测;AdminServer: 用于管理压测节点,即管理NodeServer,类似于 TARS 框架服务中的主控服务。
安装部署
我们先来看看怎么安装 TarsBenchmark。安装 TarsBenchmark 之前,需要具备 TARS 框架,关于如何安装 TARS,参考文档 TARS 框架部署。
首先,下载 TarsBenchmark 源码
git clone https://github.com/TarsCloud/TarsBenchmark.git
TarsBenchmark 中提供了一键安装脚本,能够通过脚本直接将 TarsBenchmark 发布在 TarsWeb 上,在 TarsWeb 中集成压测功能,执行命令如下
./install.sh $WebHost $Token $AdminIP $NodeIP
其中,参数
WebHost为 TarsWeb 部署地址;Token为在 TarsWeb 用户系统中生成的 Token,能够在http://${WebHost}/auth.html#/token中新增并获取;AdminIP为要部署AdminServer的节点;NodeIP为要部署NodeServer的节点。
例如,TarsWeb 部署地址为 192.168.123.128:3000,并要将 AdminServer 部署在节点 192.168.123.128,NodeServer 部署在节点 192.168.123.128,部署命令如下
cd TarsBenchmark
./install.sh 192.168.123.128:3000 abc123efg456ijk789 192.168.123.128 192.168.123.128
执行完成后,在 TarsWeb 上看到 benchmark 应用下包含服务 AdminServer 和 NodeServer,即安装成功,如下

服务压测
成功安装 TarsBenchmark 后,就可以在 TarsWeb 上对服务进行压测了。接下来我们将以 HelloServer 服务为例,了解如何对服务进行压测。
首先,我们需要定义 HelloServer 的接口
// Hello.tars
module Demo
{
interface Hello
{
int testHello<

本文介绍了如何使用TarsBenchmark对TARS服务进行压力测试,包括安装部署、服务压测和进阶用法,以确保服务的可用性和稳定性。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



