本文以具体的proto文件为例,描述如何创建正确的gRPC压测场景。
操作步骤
若要压测某个gRPC服务中的方法,首先要上传定义该服务和方法的proto文件。
将要压测的方法定义为CreateShelf,定义该方法的proto文件为:
syntax = "proto3"; package bookstore; service Bookstore { rpc ListShelves (google.protobuf.Empty) returns (ListShelvesResponse) {} rpc CreateShelf (CreateShelfRequest) returns (Shelf) {} } message ListShelvesResponse { repeated Shelf shelves = 1; } message CreateShelfRequest { Shelf shelf = 1; }
说明可以看到该方法的包名为bookstore,接口名为Bookstore,方法名为CreateShelf,所以在基本配置的方法名一栏应填写:bookstore.Bookstore/CreateShelf。
CreateShelf的传参为CreateShelfRequest,其中有一个自定义字段shelf:
syntax = "proto3"; package bookstore; message Shelf { int64 id = 1; string theme = 2; }
因此JSON格式的请求内容为:
{ "shelf": { "id": 1, "theme": "hello" } }
在创建gRPC场景页面,单击上传proto文件,上传相应的proto文件。
后续步骤
完成场景配置后,单击保存去压测。具体操作,请参见压测gRPC微服务。
文档内容是否对您有帮助?