cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1902
Views
0
Helpful
7
Replies

API concurrent calls

martucci
Cisco Employee
Cisco Employee

Hello,

I have a customer looking to use API to create users. They are doing a set of tests where all goes ok if they run sequence calls, but they are trying to run parallel calls and adding more users at the same time.

They have issues where the parallel calls have errors with the authentication, indicating that maybe we could do only one call at the same time.

I asked them to add bulk add, but due to the logic they have, it would not be possible to combine in multiple adds.

I have seen the numbers on the HLD abut the users/sec that we can add to the system, so I would assume those would be made with bulk addition, rather than consequent calls?

Thanks a lot for the help

1 Accepted Solution

Accepted Solutions

So you're saying there are going to multiple systems (perhaps Visitor management) calling the guest API at the same time?

Is it the same user being used on different systems? Or does each system have its own user?

example visitorsystem1 - user visitorsystem1

example visitorsystem2 - user visitorsystem2

View solution in original post

7 Replies 7

thomas
Cisco Employee
Cisco Employee

It's hard to know what the exact issue is without the actual error.

Is it possible to do a short pause in between each individual add and see if it truly is a timing issue?

I updated the ISE Performance & Scale doc with the latest information on Guest REST API performance:

Bulk Guest Creation via ERS API

50 per second

95 per second

Hi Thomas,

here are details on what is happening.

They try to test now with 2 parallel requests,and in this case they always have one of the 2 going in error.

The error can be of 2 different types are below

1) case, they have the below reply from ISE


<!DOCTYPE html><html>

<head>

<title> - Error report </title>

<style type="text/css">H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}.line {height: 1px; background-color: #525D76; border: none;}</style>

</head>

<body><h1>HTTP Status 401 - </h1>

<div class="line"></div>

<p><b>type</b> Status report</p>

<p><b>message</b> <u></u></p>

<p><b>description</b> <u>This request requires HTTP authentication.</u></p>

<hr class="line"><h3></h3>

</body>

</html>

2) in the second case they have the following message

Connection refused.

HTTP 401 is strictly an authentication issue - not a resource issue.

Connection Refused could be a resource unavailable issue.

ISE Version?

ISE ERS API URL?

I can try to ask the Engineering team for more information about concurrency with an individual URL. If it is truly an issue with concurrency I would suggest running them synchronously or adding a short delay before firing another request.

We don't have a good method for troubleshooting APIs since that involves reviewing code of potentially many different languages.

Thanks Thomas,

ISE is 2.1. They send exactly the same request (add a guest user) at the same time, so their guess (and what it seems to be), is that it is no possible for the server to authenticate 2 requests done in the same time, as one of the 2 fails.For them is difficult to control the timing as the calls might be done from different systems when guests arrive.

I do not want you to lose too much time, but maybe we can ask the responsible engineer if they can take a quick look, as this can jeopardize the project.

Thanks a lot

Francesca

So you're saying there are going to multiple systems (perhaps Visitor management) calling the guest API at the same time?

Is it the same user being used on different systems? Or does each system have its own user?

example visitorsystem1 - user visitorsystem1

example visitorsystem2 - user visitorsystem2

we are taking this offline with development

To close out on this, it appears to be scaling issue, specs are ~50 calls per second for a 3495 and 95 for 3595 which is the current limitation perISE Performance &amp; Scale

They are under that value and investigating under SR681956322