Salesforce allows only 10 long running requests per organisation. An Request that is running for more than 5 seconds is considered as long running request.
Following are the things which count against long running requests
- Apex - Classes/controllers, triggers
- SOQL
- Web Services - External and Apex Web Services
- Visualforce - ActionPoller, Ajax/Action-functions, JavaScript Remoting
- API - Calls to an Apex Class
How to prevent this
While designing the solution, try to use asynchronous requests in you VF pages, by using CONTINUATION class and Tune your SOQL queries so that they are executed for less amount of time.
You can find out the operation which is leading to this error by collecting and analyzing the debug log.
There is a very good article on developer.salesforce.com to avoid this.
Designing Force.com Applications That Avoid Hitting Concurrent Request Limits
Possible solutions.
- Convert synchronous processes to asynchronous processes. Batch Apex might be a viable alternative. Limit synchronous Web service callouts.
- Use the Streaming API instead of polling
- Tune SOQL and DML operations. Make sure that your queries are selective. Limit the number of records in your list views. Avoid data skew.