剖析美团内部所采用的网站压力测试方案(3)
一旦流量拷贝完成后,通过Web界面,用户能够查看日志的收集情况和单条日志的详情。 压测逻辑实现 复制代码 代码如下:
以Thrift服务为例:
Java Code复制内容到剪贴板
class TestServiceRunner implements Runner {
RPCService.Client _client TTransport _transport;
@Override def init(Test app) { def conf = app.config // 读取应用配置 _transport = new TFramedTransport(new TSocket(conf.get("thrift_service_host") as String, conf.get("thrift_service_port") as int)) TProtocol protocol = new TBinaryProtocol(_transport) _client = new RPCService.Client(protocol) _transport.open() }
@Override def run(Test app, String log) { TestRequest req = Vcr.deSerialize(log, TestRequest.class) // 将拷贝流量反序列化 _client.echo(req) // 发送请求 }
@Override def destroy(Test app) { _transport.close() // 关闭服务 } } 创建应用 用户可以通过Web界面创建应用,除了必填配置以外,用户可以按照应用灵活配置。 (编辑:ASP站长网) |