baidu / baidu/sofa-pbrpc

sofa-server端耗时异常

Open
#220 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
2.1k
Forks
650
PR merge metrics
No merged PRs in 30d

Description

使用sofa编写的server,有部分请求耗时长,尝试修改了一些sofa源码,在一些关键步骤加入了调试信息,详情如下:
1、2017-11-29 11:28:14.984941 +0800 384567 OnReceived, seqid:2225===============>在RpcServerImpl::OnReceived函数中, 调用CallMethod之前
2、I1129 11:28:14.985003 384567 table-server/src/node/sofa_node_server.cc:106] RpcCall Cost:0ms,====================>调用done->Run()之前
3、2017-11-29 11:28:15.047725 +0800 384567 OnCallMethodDone, seqid:2225, ============>在RpcServerImpl::OnCallMethodDone函数中开始时
4、2017-11-29 11:28:15.047799 +0800 384559 OnSendResponseDone, seqid:2225,=============>在RpcServerImpl::OnSendResponseDone函数结尾部分

想知道为什么第二步和第三步之前为什么间隔这么长时间? @qinzuoyan

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing RpcServerImpl::OnReceived, RpcServerImpl::OnCallMethodDone, and RpcServerImpl::OnSendResponseDone, then inspect table-server/src/node/sofa_node_server.cc:106. Compare the reported timestamps around CallMethod and done->Run(); done means identifying where the roughly 60 ms gap occurs and documenting the cause.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
backend-api-design
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.