I have some questions/concerns around WFA scalability. Specifically, I need a better understanding of WFA's ability to scale from a multi-threading perspective. I need to know how WFA will handle a bunch of requests all at once (via SOAP web services) if my in house storage service gets a bunch of requests. Usage of WFA in my instance is strictly via the web services, not the web GUI.
My confusion stems from the lack of documentation around the way WFA scales in this sense (if this exists please let me know).
Thus far I have found this document on v1.1:
On slide 10 the notes area states that WFA v1.1 can now execute 2 workflows in parallel (you can only see the notes if you download the deck and view in PowerPoint).
Yet this document:
it is implied on the first page in the second table (last row) that WFA can handle up to 30 workflows in parallel.
Can I please get some clarity around how WFA would handle:
- A group of 15 requests, can WFA execute all 15 at once in parallel? What is the limit?
- How does WFA do parallel processing? Is it via multiple threads?
- If 15 requests were submitted to WFA all at once, and assuming it can only work 2 at a time, does it queue them up? If so, what would happen to these queued jobs (and any in flight) if WFA crashed (server reboot, etc)?
I'm trying to understand WFA capabilities and limitations in this area so I can establish a clear scaling architecture. If WFA can work enough requests in parallel then I'll go with one architecture
that will involve fewer WFA servers. But if WFA can only work 2 requests in parallel it won't scale for large environments where we need faster provisioning so I may need to look at more WFA servers that service a smaller subset of my environment (for example, one WFA per OC resource pool).