Need guidance on how I can configure one specific node ( sys_cluster_state) to be dedicated for processing Web Servi

Michael113
Kilo Contributor

Recently we turned on some integration with an external application. This app is doing a lot of REST API calls to our tables... We want to figure out how can we dedicate specific nodes only for processing those calls and do not affect users

1 ACCEPTED SOLUTION

peter_z
ServiceNow Employee
ServiceNow Employee

Let me suggest this.   Talk to support to get them to help understand the actual performance impact that you are having from this inbound integration.   There is probably several options to mitigate that, Such as:

  • can the query be optimised
  • is there any indexing opportunities
  • Is there processing code options
  • Should the inbound integration break into pages to reduce the size of data return set, etc..

As I said upfront,  there's potentially other solutions available to help out and reconfiguring the appnodes while possible to do is not something that would be done unless much of the other options had already been ruled out.

Each appNode configured on the instance is able to process 4 concurrent inbound requests by default and will "queue" inbound requests beyond this.  The semaphore will be held as long as the operations invoked are running on the platform.  This post may be helpful in background:

https://community.servicenow.com/community?id=community_article&sys_id=213ce661dbd0dbc01dcaf3231f961...

 

View solution in original post

6 REPLIES 6

Thank you for replying. I will go on that path and work with Support as needed. Any findings I'll post here for sharing them out with the communityl

Michael113
Kilo Contributor

FYI. 

At the end we worked with ServiceNow and got the following procedure done.

 

"x" Semaphores( Will depend on your architecture) from the default semaphore set were moved to the api_int semaphore set.

In our case this helped out and now we see things moving flawless.