SOA Load Balancing Questions RRS feed

  • Question

  • I'm struggling to get my service to use available nodes in the way I want it to.  I launch my service on 20 nodes, and then I send service calls in batches of a few hundred to a thousand at a time.  Rather than splitting these calls equally among the 20 nodes the service is running on, almost all of the service calls are handled by one or two nodes and the other 18 service nodes shut down almost immediately.  If I bump up the number of calls per batch to 10,000 then it keeps more of the nodes up and running, although it still seems to be using some nodes much more than others.  What settings might I need to tweak to get better performance out of my service?

    Wednesday, November 8, 2017 10:30 PM

All replies

  • Hi DarryIM,

    Looks like most service hosts were shrunk automatically since all requests (suppose they are short) were handled by a few service hosts. You may first check the SessionResourceUnitType, when using Node, you may specify the MinimumUnits to 20, so keep the 20 service hosts running on the 20 nodes without shrinking. Then check the serivce registration file for maxConcurrentCalls and serviceRequestPrefetchCount, set them to 1 and 0 (or small positive ints) to limit the number of requests dispatched to a service host at a time. After creating the session, you may also wait for all service hosts to be initialized before sending requests, in case some service hosts start early than others so processing much more requests (especially when they are short).


    Yutong Sun 

    Thursday, November 16, 2017 3:05 PM