Looking for advice on how best to spray at multiple endpoints in a cluster

We have an application that is hosted in multiple data centers. Traffic is routed based on network topology, so that a client is routed to the nearest data center.

I need to load up both data centers. Because of the topological routing, I can’t use a common base URL in my simulation, I’m going to need to target the data centers directly.

Now, I know I’m not the first that is asked to flood an entire cluster in a single scenario or simulation. So I was hoping some of the folks on this list might be willing to share the techniques they have used.

One option I thought of was to make a scenario chain builder parameterized, and then my simulation can include both. I’m not a big fan of that solution, but it might work.

Another option was to have a random feeder that has all of the endpoints. Ideally, that random feeder would get its list of what to return from a multi-value config entry. Then my scenarios that need to be pointed at a random box in the cluster can consult the feeder at the beginning. Other scenarios can seed the session variable from config if I just want to hit a single endpoint. The consequence of this is that all requests must reference the session variable for what host to direct the request at.

Is there a better way? What have you done? What way do you recommend?

Thanks in advance for sharing your wisdom and experience!

– John

Can’t you just use the multi-valued form of baseURL?

But of course! I hadn’t noticed that before, because I hadn’t needed it before. But naturally, that is exactly what I needed. Thank you!