For the complete documentation index, see llms.txt. This page is also available as Markdown.

Performance Report

Overview

The eSignet Performance Testing Report provides a comprehensive analysis of the system’s responsiveness, reliability, and scalability under various operational conditions. It captures key performance metrics such as throughput, resource utilization and memory consumption. This report is designed to help stakeholders understand how eSignet performs in real-world scenarios, identify potential bottlenecks, and guide future optimizations to ensure a seamless and secure authentication experience.

Summary

Load tests were conducted to assess the performance and stability of eSignet APIs. The mock-identity-system was used to artificially induce 1,3 and 5 second delay in 3 different tests to check for performance variability under different response times.

During each of the three 10‑hour test windows, the system successfully processed ~1.9 million authentications originating from 100,000 unique identities, maintaining a steady throughput of ~50 transactions per second. Throughout the test, all API response times consistently remained close to the 100‑millisecond SLA target (not including the artificial mock delay).

A Resource Calculator is provided to help estimate their hardware requirement to achieve similar performance at a larger scale.

No major performance degradation or bottlenecks were observed throughout the test duration. Based on the results, this module is assessed to be stable, performant, and ready for release. However, few issues have been recognized, documented and will be addressed in future release.

Performance Improvements

In this release the core authentication engine has been migrated from Java to Go, for better long-term sustainability, performance and efficiency. Go, as a runtime, has been judged to be better suited to the kind of high-throughput, low-latency authentication workloads that a national identity backend needs to sustain. Improvements have been made in caching, connection management. Go configs have also been tuned to match varying possible auth response times.

Test Environment

Deviation from the default

  • mock-identity-system service was used as an Identity authentication provider. The response delay was set to 1,3 and 5 seconds in three different tests.

Software Under Test

Following ‘Images’ were under the scope of ‘Performance Testing’, and will be transferred as mosipid images

Modules Segregation

Image ID
Branch Name
Comments

mosipqa/eSignet:2.0.x

release-2.0.x

mosipqa/oidc-ui:2.0.x

release-2.0.x

mosipqa/mock-identity-system:0.14.x

release-0.14.x

Repo used is mosip/eSignet-mock-service

Test Data

Performance data load was populated before the run to ensure realistic results.

DB
Table Name
Number Of Records (Target)
Number Of Records (Tested with)

mosip_mockidentitysystem

Mock_identity

100,000

100,000

Test Design

  • Test Duration: 10-Hours

  • Test Type: Load Test

  • Ramp Up: 15 mins

  • Total TPS: 50

Workload Model

Scenario Name
API Endpoint
SLA (ms)
Weightage/ Load Distribution
Throughput (TPS)
Target Volume

S01 OTP Authentication

S01 T01 Initiate PAR Endpoint

100

80%

40

1,440,000

S01 T02 Send Authorize Endpoint

100

S01 T03 Flow Meta Endpoint

100

S01 T04 1 Authentication Flow - Start Endpoint

100

S01 T04 2 Authentication Flow - ACR Endpoint

100

S01 T04 3 Authentication Flow - Individual ID Endpoint

100

S01 T04 4 Authentication Flow - OTP Endpoint

100

S01 T04 5 Authentication Flow - Consent Endpoint

100

S01 T05 Obtain Authorization Code Endpoint

100

S01 T06 Obtain Access Token Endpoint

100

S01 T07 User Info Endpoint

100

S02 Biometric Authentication

S02 T01 Initiate PAR Endpoint

100

20%

10

360,000

S02 T02 Send Authorize Endpoint

100

S02 T03 Flow Meta Endpoint

100

S02 T04 1 Authentication Flow - Start Endpoint

100

S02 T04 2 Authentication Flow - Select acr Endpoint

100

S02 T04 3 Authentication Flow - Individual ID Endpoint

100

S02 T04 4 Authentication Flow - Bio Endpoint

100

S02 T04 5 Authentication Flow - Consent Endpoint

100

S02 T05 Obtain Authorization Code Endpoint

100

S02 T06 Obtain Access Token Endpoint

100

S02 T07 User Info Endpoint

100

Test Results

Performance test execution results

Test 1

Application Name

eSignet (under 5 second mock response delay)

Test Duration

7/9/26, 1:56 PM - 11:56 PM (10-Hours)

Number of parallel threads

802

Status

GREEN

Test 2

Application Name

eSignet (under 3 second mock response delay)

Test Duration

8/9/26, 10:27 AM – 8:27 PM (10-Hours)

Number of parallel threads

516

Status

GREEN

Test 3

Application Name

eSignet (under 1 second mock response delay)

Test Duration

8/9/26, 9:00 PM - 9/9/26 7:00 PM (10-Hours)

Number of parallel threads

191

Status

GREEN

Test Reports

Test 1 - under 5 second mock response delay

Scenario Name
Transaction Name
API Endpoint
50 TPS 802 VUsers

Date: 7/9/26 (10 Hours)

# Samples

Min

Average

95% Line

Max

Error %

S01 OTP Authentication

S01 T01 Initiate PAR Endpoint

/oauth2/par → POST

1,582,426

4

9

15

275

0.0%

S01 T02 Send Authorize Endpoint

/oauth2/authorize → GET

1,582,426

6

14

25

272

0.0%

S01 T03 Flow Meta Endpoint

/flow/meta → GET

1,582,426

13

22

35

293

0.0%

S01 T04 1 Authentication Flow - Start Endpoint

/flow/execute(start) → POST

1,582,422

6

13

24

282

0.0%

S01 T04 2 Authentication Flow - ACR Endpoint

/flow/execute(select-acr) → POST

1,582,420

6

13

24

280

0.0%

S01 T04 3 Authentication Flow - Individual ID Endpoint

/flow/execute(submit-uin) → POST

1,582,418

5,010

5,019

5,031

5,667

0.0%

S01 T04 4 Authentication Flow - OTP Endpoint

/flow/execute(submit-otp) → POST

1,582,205

5,013

5,024

5,037

5,301

0.0%

S01 T04 5 Authentication Flow - Consent Endpoint

/flow/execute(consent) → POST

1,581,984

5,015

5,030

5,046

5,322

0.0%

S01 T05 Obtain Authorization Code Endpoint

/oauth2/auth/callback → POST

1,581,754

6

15

27

260

0.0%

S01 T06 Obtain Access Token Endpoint

/oauth2/token → POST

1,581,750

5

12

22

263

0.0%

S01 T07 User Info Endpoint

/oauth2/userinfo → GET

1,581,748

6

13

23

231

0.0%

S02 Biometric Authentication

S02 T01 Initiate PAR Endpoint

/oauth2/par → POST

359,798

4

9

16

93

0.0%

S02 T02 Send Authorize Endpoint

/oauth2/authorize → GET

359,794

6

15

31

256

0.0%

S02 T03 Flow Meta Endpoint

/flow/meta → GET

359,793

13

24

42

286

0.0%

S02 T04 1 Authentication Flow - Start Endpoint

/flow/execute(start) → POST

359,792

6

13

27

221

0.0%

S02 T04 2 Authentication Flow - Select acr Endpoint

/flow/execute(select-acr) → POST

359,791

6

13

24

231

0.0%

S02 T04 3 Authentication Flow - Individual ID Endpoint

/flow/execute(submit-uin) → POST

359,791

6

13

24

256

0.0%

S02 T04 4 Authentication Flow - Bio Endpoint

/flow/execute(submit-otp) → POST

359,791

5,012

5,024

5,039

5,283

0.0%

S02 T04 5 Authentication Flow - Consent Endpoint

/flow/execute(consent) → POST

359,739

5,017

5,032

5,054

5,295

0.0%

S02 T05 Obtain Authorization Code Endpoint

/oauth2/auth/callback → POST

359,686

6

15

30

199

0.0%

S02 T06 Obtain Access Token Endpoint

/oauth2/token → POST

359,682

5

12

22

130

0.0%

S02 T07 User Info Endpoint

/oauth2/userinfo → GET

359,680

6

12

23

129

0.0%

Test 2 - under 3 second mock response delay

Scenario Name
Transaction Name
API Endpoint
50 TPS 516 VUsers

Date: 8/9/26 (10 Hours)

# Samples

Min

Average

95% Line

Max

Error %

S01 OTP Authentication

S01 T01 Initiate PAR Endpoint

/oauth2/par → POST

1,611,896

4

7

11

162

0.0%

S01 T02 Send Authorize Endpoint

/oauth2/authorize → GET

1,611,893

6

13

22

290

0.0%

S01 T03 Flow Meta Endpoint

/flow/meta → GET

1,611,893

13

35

86

268

0.0%

S01 T04 1 Authentication Flow - Start Endpoint

/flow/execute(start) → POST

1,611,893

6

40

89

268

0.0%

S01 T04 2 Authentication Flow - ACR Endpoint

/flow/execute(select-acr) → POST

1,611,893

6

42

89

3124

0.0%

S01 T04 3 Authentication Flow - Individual ID Endpoint

/flow/execute(submit-uin) → POST

1,611,893

3,010

3,054

3,100

3877

0.0%

S01 T04 4 Authentication Flow - OTP Endpoint

/flow/execute(submit-otp) → POST

1,611,757

3,013

3,063

3,118

3673

0.0%

S01 T04 5 Authentication Flow - Consent Endpoint

/flow/execute(consent) → POST

1,611,619

3,018

3,066

3,127

3295

0.0%

S01 T05 Obtain Authorization Code Endpoint

/oauth2/auth/callback → POST

1,611,483

6

29

75

302

0.0%

S01 T06 Obtain Access Token Endpoint

/oauth2/token → POST

1,611,469

5

11

27

190

0.0%

S01 T07 User Info Endpoint

/oauth2/userinfo → GET

1,611,462

6

11

17

222

0.0%

S02 Biometric Authentication

S02 T01 Initiate PAR Endpoint

/oauth2/par → POST

359,593

4

19

56

192

0.0%

S02 T02 Send Authorize Endpoint

/oauth2/authorize → GET

359,590

6

27

86

239

0.0%

S02 T03 Flow Meta Endpoint

/flow/meta → GET

359,590

13

36

88

258

0.0%

S02 T04 1 Authentication Flow - Start Endpoint

/flow/execute(start) → POST

359,590

6

29

80

239

0.0%

S02 T04 2 Authentication Flow - Select acr Endpoint

/flow/execute(select-acr) → POST

359,585

6

28

77

257

0.0%

S02 T04 3 Authentication Flow - Individual ID Endpoint

/flow/execute(submit-uin) → POST

359,582

6

25

73

247

0.0%

S02 T04 4 Authentication Flow - Bio Endpoint

/flow/execute(submit-otp) → POST

359,578

3,012

3,042

3,099

3296

0.0%

S02 T04 5 Authentication Flow - Consent Endpoint

/flow/execute(consent) → POST

359,552

3,017

3,051

3,121

3344

0.0%

S02 T05 Obtain Authorization Code Endpoint

/oauth2/auth/callback → POST

359,522

6

25

75

229

0.0%

S02 T06 Obtain Access Token Endpoint

/oauth2/token → POST

359,519

5

21

71

236

0.0%

S02 T07 User Info Endpoint

/oauth2/userinfo → GET

359,519

6

32

91

273

0.0%

Test 3 - under 1 second mock response delay

Scenario Name
Transaction Name
API Endpoint
50 TPS 191 VUsers

Date: 8/9/26 (10 Hours)

# Samples

Min

Average

95% Line

Max

Error %

S01 OTP Authentication

S01 T01 Initiate PAR Endpoint

/oauth2/par → POST

1,617,619

4

7

11

105

0.0%

S01 T02 Send Authorize Endpoint

/oauth2/authorize → GET

1,617,613

7

15

35

119

0.0%

S01 T03 Flow Meta Endpoint

/flow/meta → GET

1,617,613

14

35

63

120

0.0%

S01 T04 1 Authentication Flow - Start Endpoint

/flow/execute(start) → POST

1,617,613

7

27

52

273

0.0%

S01 T04 2 Authentication Flow - ACR Endpoint

/flow/execute(select-acr) → POST

1,617,613

7

24

47

134

0.0%

S01 T04 3 Authentication Flow - Individual ID Endpoint

/flow/execute(submit-uin) → POST

1,617,613

1,011

1,032

1,056

1,687

0.0%

S01 T04 4 Authentication Flow - OTP Endpoint

/flow/execute(submit-otp) → POST

1,617,567

1,014

1,037

1,062

1,707

0.0%

S01 T04 5 Authentication Flow - Consent Endpoint

/flow/execute(consent) → POST

1,617,520

1,018

1,042

1,069

4,605

0.0%

S01 T05 Obtain Authorization Code Endpoint

/oauth2/auth/callback → POST

1,617,474

6

17

36

122

0.0%

S01 T06 Obtain Access Token Endpoint

/oauth2/token → POST

1,617,474

6

11

19

99

0.0%

S01 T07 User Info Endpoint

/oauth2/userinfo → GET

1,617,469

6

10

13

78

0.0%

S02 Biometric Authentication

S02 T01 Initiate PAR Endpoint

/oauth2/par → POST

360,350

4

12

28

88

0.0%

S02 T02 Send Authorize Endpoint

/oauth2/authorize → GET

360,350

7

21

51

112

0.0%

S02 T03 Flow Meta Endpoint

/flow/meta → GET

360,350

14

28

54

123

0.0%

S02 T04 1 Authentication Flow - Start Endpoint

/flow/execute(start) → POST

360,350

7

18

43

114

0.0%

S02 T04 2 Authentication Flow - Select acr Endpoint

/flow/execute(select-acr) → POST

360,350

7

17

43

126

0.0%

S02 T04 3 Authentication Flow - Individual ID Endpoint

/flow/execute(submit-uin) → POST

360,349

7

18

42

105

0.0%

S02 T04 4 Authentication Flow - Bio Endpoint

/flow/execute(submit-otp) → POST

360,349

1,013

1,032

1,065

1,131

0.0%

S02 T04 5 Authentication Flow - Consent Endpoint

/flow/execute(consent) → POST

360,339

1,018

1,040

1,076

1,157

0.0%

S02 T05 Obtain Authorization Code Endpoint

/oauth2/auth/callback → POST

360,329

6

18

46

108

0.0%