We are trying to create a knowledge base that uses Nintex Workflow on O365. We are encountering issues with the performance of the workflows, i.e. the workflows take a lot of time to execute.
In this regard I have 2 questions:
1) What should be the normal execution time for a basic Nintex workflow on O365? The workflow should for instance query a list from the same site and log some information to the history list. I've created a really basic workflow that sets some variables with simple list lookup. Workflow sample attached (test). Execution on a default list takes approximately 40 seconds. Is this normal?
2) A similar workflow that performs a more complex query on a list in the same site takes 1-2 minutes. I'm using the Office365 Query List action. This seems like a long execution time. Workflow is also attached (GetUserInfo).
Are these execution times normal or is something not right?
Thanks in advance for your help!
It's hard to say really what the baseline execution time should be. But in truth, the times you posted do not sound unbelievable. Sometimes there are env. factors that come into play such as how many other workflows are currently executing, what services are currently available, etc.. I'd try testing them at different times throughout the day to see if that makes any difference and then take note of what type of activity is occurring on the server at the times you see performance differences. The types of actions that are contained within your workflows will definitely affect the time it takes to run. Sorry it can't be more of a science, but it really comes down to finding the variances in each individual environment.
Thanks for your reply. We need really fast execution for the system (knowledgebase) we had in mind so we are going to look at other options (more like business-rule engines than workflows).
The time that you are seeing is about normal for an O365 instance. You have to remember that Microsoft will throttle resources for workflow manager as it needs to keep one tenant from sucking up more than its share during peek hours, etc.
40 seconds isn't too terribly long if you are querying a list. For this actions, SharePoint behind the scenes iterates through all the items first and then filters for the queried items. This is not something Nintex can get around as its using the SharePoint engine. So depending on your number of items in the list, you could see this increase, or decrease. Something to think about.
Obviously the more complex the query and workflow, the longer it may take. In a real world situation, you would be able to throw more resources at the workflows running, but because its in "cloud", MS is handling some of that for you.
Workflows are great regardless of the environment and allow for simple manipulation of business processes. Not sure what business-rule engines you may use, but I wouldn't over-engineer a process just for timing unless its truly business critical.
Hope this helps.