This documentation supports the 9.1 version of Remedy Action Request System.

To view the latest version, select the version from the Product version menu.

Managing web service performance issues

This section describes configuration changes that might be required when using web services with the AR System server.

Managing the number of server threads

If an AR System server calls itself through a web service, twice the number of fast and list threads are used. Therefore, the minimum number of fast and list threads should be more than two. The number of server threads should be two times the expected number of users that will use the web-services feature if they are consuming on the same server.

Because each web service call consumes two threads, it is easy to get into a deadlock situation by running out of threads.

To consume a web service created on the same AR System server, you must increase the number of threads. To increase the number of server threads, open the AR System Administration: Server Information form, select the Ports and Queues tab, and adjust the number of threads.

Setting the time-out

If an external web service is too slow, the AR System server times out in 40 seconds, by default. Set the time-out to 20 seconds. 

Warning

You must restart the AR System Server if you change the web service time-out in the Centralized Configuration.


To modify the time-out setting, perform the following:

  1. In a browser, open the BMC Remedy AR System Administration Console, and click System > General > Centralized Configuration.
  2. In the AR System Configuration Generic UI form, from the Component Name list, select the com.bmc.arsys.server.extension. webservice component.
  3. From the settings table, select the timeout setting.
  4. Edit the timeout setting value, and click Apply.
  5. Click Close.

AR System Server behavior when calculating the web service timeout

When you set the Filter API Timeout parameter and the Web Service API Timeout parameter, the web service timeout is calculated by considering the following:

  • If Filter API Timeout is more than 300 seconds, consider it as 300 seconds only.
  • If Web service Timeout is defined as zero, use Filter API Timeout value for Web service API timeout. Or, consider the Web Service Timeout value as the value lowest between Web service API Timeout or Filter API Timeout.
  • If Web Service API Timeout value + 5 (here, five is a constant for adjustment) is greater than the Filter API Timeout value, reduce the Web Service API timeout value by 5.
  • After considering the points described above, if the Web Service Timeout is zero, consider the timeout value as 35. Or use any non-zero value that you have obtained.

Code example:

If (filterAPITimeout > 300){
  filterAPITimeout = 300;
}
If (WebSerciveAPITimeout> 300) {
  WebSerciveAPITimeout = lowest of (WebServiceAPITimeout, filterAPITimeout);


} else {
          WebSerciveAPITimeout = filterAPITimeout
 }
If ((WebSerciveAPITimeout + 5) > filterAPITimeout){
   
  WebSerciveAPITimeout = WebSerciveAPITimeout -5;//This allows to have some time for further filter processing.//
 }
 If (WebSerciveAPITimeout > 0){
    WebSerciveAPITimeout = 35
}

Refer to the following examples:

Example 1

If the Web Service API Timeout parameter value is 100 seconds and the Filter API timeout parameter value is 102 seconds, the Web Service Timeout is calculated as follows:

Since 100 is less than 102 and (100+5) is greater than 102, the Web Service Timeout is (102-5) = 97 seconds.

Example 2

If the Web Service API Timeout parameter value is 105 seconds and the Filter API timeout parameter value is 100 seconds, the Web Service Timeout is calculated as follows:

100 is less than 105 and (100+5) is greater than 100, the Web Service Timeout is (100-5) = 95 seconds.


Was this page helpful? Yes No Submitting... Thank you

Comments

  1. Andreas Mitterdorfer

    Setting the log file

    Set Plugin-Log-Level:100 to log to a file specified in the Log Files tab of the AR System Administration: Server Information form

     

    This seems to be incorrect for webservices? Compare to instructions on https://docs.bmc.com/docs/display/public/ars91/AR+System+and+web+services+introduction

    Nov 02, 2015 08:07
  2. Jason Mair

    The above examples are confusing as they both use the Filter API Timeout setting, but what you're saying is if the Web Service API Timeout is lower than the Filter API Timeout-5 then that would be used?

    Example: If the Web Service API Timeout parameter value is 60 seconds and the Filter API Timeout parameter value is 100 seconds, the web service timeout value is calculated as follows:

    Web Service Timeout is 60 as it's the lower of the 2 values?

    Is this true for Filters doing a set fields from Atrium Orchestrator web services?

    May 09, 2019 03:06
    1. Anagha Deshpande

      Hello Jason,

      Apologies for the delayed response.

      Please see below the response for your queries:

      • Web Service Timeout is 60 as it's the lower of the 2 values? — Yes, that is correct. The lesser value after applying the formula is considered as the value for Web Service Timeout.
      • Is this true for Filters doing a set field from Atrium Orchestrator web services? — Yes, this is applicable for filters using a set field from the Atrium Orchestrator web services and for all external web services.

      Regards,

      Anagha

      Jun 19, 2019 11:32