python - grpc python 测量响应时间

我如何测量 grpc-python 处理请求的全部时间? 到目前为止,我能做的最好的是:

def Run(self, request, context):
   start = time.time()
   # service code...
   end = time.time()
   return myservice_stub.Response()

但这并不能衡量 grpc 需要多少时间来序列化请求、响应、通过网络传输......等等。我正在寻找一种“ Hook ”这些步骤的方法。

最佳答案

您可以在客户端测量:

start = time.time()
response = stub.Run(request)
total_end_to_end = time.time() - start

然后你可以通过减少Run方法的计算得到总的开销(序列化,传输)。

要使该过程自动化,您可以将计算时间作为字段添加(至少为了测试)到 myservice_stub.Response

https://stackoverflow.com/questions/63810995/

相关文章:

python - 将 Python2 文件派生类移植到 Python 3

reactjs - 测试套装因 "SyntaxError: Unexpected token ' e

javascript - Chart JS Annotations Plugin - 你能创建一个工

vim - Coc-Prettier 没有获取项目或家庭配置

javascript - 汇总、Svelte、SCSS : how to build differe

regex - 珀尔 : Edit the log file data

python - 使用 Enterprise Architect Python API 旋转标签

javascript - 使用 Typescript 允许 React 组件上的任意数据-* 属性

android-studio - Android Studio 不会生成签名的 aab

sql - PostgreSQL:如果不存在则插入,如果存在则返回ID