Re: [I] backup request可以支持下游错误率高于一定阈值时不生效吗? (brpc)

2024-07-02 Thread via GitHub


icexin commented on issue #2668:
URL: https://github.com/apache/brpc/issues/2668#issuecomment-2205038609

   > 
我们是对backuprequest做了优化处理,只允许x%的请求发起backuprequest,并且backuprequest的阈值不是固定值,而是跟随延时的P99或者P95一起波动
   
   有代码吗?这个需求挺常见的


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org



Re: [I] backup request可以支持下游错误率高于一定阈值时不生效吗? (brpc)

2024-07-06 Thread via GitHub


chenBright commented on issue #2668:
URL: https://github.com/apache/brpc/issues/2668#issuecomment-2211789986

   容灾方面是不是可以全面一点?
   (周期或者滑动窗口)统计请求的成功率,根据成功率可以做以下策略:
   1. lb选实例时,减少访问可用性弱的实例;
   2. 减少重试(包括backup request)。
   3. 其他,待补充。


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org



Re: [I] backup request可以支持下游错误率高于一定阈值时不生效吗? (brpc)

2024-07-12 Thread via GitHub


icexin commented on issue #2668:
URL: https://github.com/apache/brpc/issues/2668#issuecomment-2226635368

   https://grpc.io/docs/guides/request-hedging/ grpc也有类似的请求策略,叫Hedged 
Request,为了防止雪崩,做了一个类似令牌的限制策略


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org



Re: [I] backup request可以支持下游错误率高于一定阈值时不生效吗? (brpc)

2024-08-03 Thread via GitHub


GreateCode commented on issue #2668:
URL: https://github.com/apache/brpc/issues/2668#issuecomment-2267290639

   > 容灾方面是不是可以全面一点? (周期或者滑动窗口)统计请求的成功率,根据成功率可以做以下策略:
   > 
   > 1. lb选实例时,减少访问可用性弱的实例;
   > 2. 减少重试(包括backup request)。
   > 3. 其他,待补充。
   
   1. lb可以参考现有的la或者通过LoadBalancerExtension()->RegisterOrDie("name", new 
LBXXX)自定义新的。
   2. 
但减少重试是个lazy行为,一开始发起A、B、C请求都配上backup_request,到backup_request_ms后,A已完成,只有B、C需要backup_request,假如此时只允许50%触发backup_request。就得在HandleBackupRequest里一开始拦截一下,避免触发EBACKUPREQUEST。这个feature需要支持下。


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org



Re: [I] backup request可以支持下游错误率高于一定阈值时不生效吗? (brpc)

2024-08-03 Thread via GitHub


chenBright commented on issue #2668:
URL: https://github.com/apache/brpc/issues/2668#issuecomment-2267352667

   > 在HandleBackupRequest里一开始拦截一下,避免触发EBACKUPREQUEST。
   
   需要这么及时地拦截吗?
   
   
ChannelOptions支持一个backup_request_policy,支持动态backup_request时间,这样处理起来更统一,更能满足多样的需求吧。


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org



Re: [I] backup request可以支持下游错误率高于一定阈值时不生效吗? (brpc)

2024-08-03 Thread via GitHub


GreateCode commented on issue #2668:
URL: https://github.com/apache/brpc/issues/2668#issuecomment-2267358299

   不在HandleBackupRequest里及时拦截的话,backup_request就发给下游server了,可能造成单server请求暴增。
   
   
ChannelOptions加backup_request_policy,是打散backup_request_ms吗?现在controller就可以设置请求粒度的backup_request_ms。而且_backup_request最好是在<
 backup_request_ms内没响应的多个请求中选择触发某几个_。


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org



Re: [I] backup request可以支持下游错误率高于一定阈值时不生效吗? (brpc)

2024-08-04 Thread via GitHub


chenBright commented on issue #2668:
URL: https://github.com/apache/brpc/issues/2668#issuecomment-2267410794

   拦截是基于什么指标呢?这个指标不灵敏的话,在HandleBackupRequest或者backup_request_policy拦截,差别不大吧。
   
   controller设置backup_request_policy也是请求粒度的。


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org



Re: [I] backup request可以支持下游错误率高于一定阈值时不生效吗? (brpc)

2024-08-04 Thread via GitHub


GreateCode commented on issue #2668:
URL: https://github.com/apache/brpc/issues/2668#issuecomment-2267428872

   
最简单的可以是允许backup_request_ms内未响应request做随机拦截,随机数可以做到,比如未响应请求里面只允许10%做去做backup_request。或者按请求优先级,这个先忽略。
   
   因为一开始发请求时,哪些请求在backup_request_ms未响应是未知的,所以都controller 
set_backup_request_policy,等backup_request_ms时间到了,此时怎么做10%真正触发backup_request呢?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org



Re: [I] backup request可以支持下游错误率高于一定阈值时不生效吗? (brpc)

2024-08-04 Thread via GitHub


chenBright commented on issue #2668:
URL: https://github.com/apache/brpc/issues/2668#issuecomment-2267450615

   嗯嗯,理解这个场景了。其实跟RetryPolicy一样,让用户决定是否要继续发请求。
   
   或许backup_request_policy可以全面一些,支持动态timeout,且支持在HandleBackupRequest拦截。


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org



Re: [I] backup request可以支持下游错误率高于一定阈值时不生效吗? (brpc)

2024-08-04 Thread via GitHub


GreateCode commented on issue #2668:
URL: https://github.com/apache/brpc/issues/2668#issuecomment-2267458757

   下周能提个pr吗,我们想用~~


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org



Re: [I] backup request可以支持下游错误率高于一定阈值时不生效吗? (brpc)

2024-08-04 Thread via GitHub


chenBright commented on issue #2668:
URL: https://github.com/apache/brpc/issues/2668#issuecomment-2267561473

   我下周找时间搞一下。


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org



Re: [I] backup request可以支持下游错误率高于一定阈值时不生效吗? (brpc)

2024-08-04 Thread via GitHub


GreateCode commented on issue #2668:
URL: https://github.com/apache/brpc/issues/2668#issuecomment-2267568405

   
顺便提下,可以把controller对象传给policy,policy拿到对应的controller.xxx某个属性,做优先级加权计算判断是否触发backup_request。


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org



Re: [I] backup request可以支持下游错误率高于一定阈值时不生效吗? (brpc)

2024-08-04 Thread via GitHub


chenBright commented on issue #2668:
URL: https://github.com/apache/brpc/issues/2668#issuecomment-2267973391

   可以拿到controller的。


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org



Re: [I] backup request可以支持下游错误率高于一定阈值时不生效吗? (brpc)

2024-08-09 Thread via GitHub


chenBright commented on issue #2668:
URL: https://github.com/apache/brpc/issues/2668#issuecomment-2279415630

   > 嗯嗯,理解这个场景了。其实跟RetryPolicy一样,让用户决定是否要继续发请求。
   > 
   > 或许backup_request_policy可以都支持:
   > 
   > 1. 支持动态timeout;
   > 2. 支持在HandleBackupRequest拦截。
   
   @icexin @GreateCode  @xiaoma2015 @NuttyNull 提了个PR,大家看看有什么建议?
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org
For additional commands, e-mail: dev-h...@brpc.apache.org