Max Concurrent Requests

asked 2011-06-13 16:54:21 -0600

lardcanoe gravatar image

How can I determine the maximum concurrent requests each proxy server can handle? I see the "workers" config, but I didn't see anything about what each worker is actually doing. So if I expect to have 5000 requests per second, I need X proxy servers. And each proxy server would have Y cores, and Z workers. Etc... ( and (

Most of my experience is from setting up Apache, where you actually have to spend a good amount of time tweaking your config for these numbers...

edit retag flag offensive close merge delete

2 answers

Sort by ยป oldest newest most voted

answered 2011-06-13 23:07:25 -0600

gholt gravatar image

Well, Swift is a lot newer than Apache, so these things are still up for testing and definitely depend on hardware characteristics.

Because of the way Python works, it can only use one CPU core per process. Each worker is a process. So, if you have 8 cores, a minimum of 8 workers should be defined. However, if you have a lot of disks on separate i/o channels, you may benefit by having even more workers (one uses the core while another is blocked on i/o).

Each worker uses coroutines to handle a lot more than just one connection. Just how many connections per worker depends on the speed of the CPU cores and the network hardware. Testing is the only way right now to figure out what can be handled.

We fire up several client servers using things like swift-bench to test concurrency and watch the load on the proxies and other servers. We also generate traffic resembling what we see on our production cluster (average/min/max object size, GETs to PUTs to HEADs, etc.) and watch the load across the cluster. Finally, we're also always watching the production clusters to make sure the load is what we anticipated and add capacity where we see the need (such as our upcoming move to separate account/container servers from the object servers.)

edit flag offensive delete link more

answered 2011-06-14 23:35:01 -0600

lardcanoe gravatar image

Thanks gholt, that solved my question.

edit flag offensive delete link more

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower


Asked: 2011-06-13 16:54:21 -0600

Seen: 377 times

Last updated: Jun 14 '11