You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@servicecomb.apache.org by "Willem Jiang (JIRA)" <ji...@apache.org> on 2018/08/02 01:21:00 UTC

[jira] [Commented] (SCB-751) The load balancer of Saga may be faced with peak problem.

    [ https://issues.apache.org/jira/browse/SCB-751?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16566215#comment-16566215 ] 

Willem Jiang commented on SCB-751:
----------------------------------

We could apply the RoundRobbin, PickFastest load balance strategy here.

> The load balancer of Saga may be faced with peak problem.
> ---------------------------------------------------------
>
>                 Key: SCB-751
>                 URL: https://issues.apache.org/jira/browse/SCB-751
>             Project: Apache ServiceComb
>          Issue Type: Improvement
>          Components: Saga
>    Affects Versions: saga-0.2.0
>         Environment: project: incubator-servicecomb-saga-0.2.0
>            Reporter: Gannalyo
>            Assignee: Willem Jiang
>            Priority: Major
>              Labels: load-balancer, saga
>             Fix For: saga-0.3.0
>
>   Original Estimate: 48h
>  Remaining Estimate: 48h
>
> Currently, Saga's load balancer will *select a fastest 'MessageSender'* to send msg from pool.
> My problem:
> At some point, if every Alpha node need take 10 minutes to handle business for some reasons(e.g. network), that means, Saga will handle all following requests by the fastest 'MessageSender' within 10 minutes.
> So, I think that the performance for Saga's load balancer will get a discount.
> Of course, I believe one alpha node can handle many many requests. Just for improving Saga.
> Part of code from LoadBalancedClusterMessageSender.java  
> {code:java}
> ... 
> MessageSender messageSender = fastestSender(); 
> try { 
>     long startTime = System.nanoTime();
>     AlphaResponse response = messageSender.send(event); 
>     senders.put(messageSender, System.nanoTime() - startTime);
>     return response; 
> } catch (OmegaException e) {
>  throw e; 
> }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)