Dotnet Core benchmark utility (for OAuth2 server)

ปิด โพสต์แล้ว 5 ปีที่ผ่านมา ชำระเงินเมื่อจัดส่ง
ปิด ชำระเงินเมื่อจัดส่ง

Hello developers.

OAuth2 and Web Api authentication Benchmark utility

Create a DotNet Core 2.1 Console Application to benchmark the execution speed of the OAuth2 Token Server as well as the Web Api Core 2.1 authentication speed.

It should do this measuring in a multi-threaded way. All configuration data, like authentication keys, OAuth2 configuration properties, quantity of threads, time limit for each thread execution, should be specified and gathered from appsettings.json.

Create a simple Web Api with 1 GET method which returns a static string (specified in [login to view URL]). It also should have 1 POST method, having in the BODY a Geometry parameter, which inside it contains a set of Lat/Long coordinates.

The POST method should return a static string, specified in [login to view URL], composed with the Lat/Long data.

Measure and display the execution speed, for each of these steps, according to the quantity of worker threads specified in configuration, of the following:

1 - Authentication (username and password) on the OAuth2 server

    Here you do NOT count the time it takes to generate the Token, only the time it takes to authenticate.

Specify a set of hard coded usernames & passwords to test

2 - Long Living Token generation on the OAuth2 server

    Here you do not measure the time it takes to authenticate with the username and password. Assume you are already authenticated.

Measure the time it takes to create Tokens:

2a - Without Claims included

2b - With 1 Claim included

2c - With 2 Claims included

2d - With 3 Claims included

2e - With 10 Claims included

3 - Authentication using the Long Living Token on the OAuth2 Server

    Here you measure the time it takes to authenticate using the LLT. Do NOT count the time it takes to generate the Short Living Token

4 - Short Living Token generation on the OAuth2 server

    Here you do not measure the time it takes to authenticate with the LLT. Assume you are already authenticated.

Measure the time it takes to create SLT Tokens:

2a - Without Claims included

2b - With 1 Claim included

2c - With 2 Claims included

2d - With 3 Claims included

2e - With 10 Claims included

5 - Web Api GET calls

    5a - No authentication (No OAuth2 relied server in the pipeline)

5b - No authentication (OAuth2 relied server in the pipeline; no authentication in the Controller)

5c - No authentication (OAuth2 relied server in the pipeline; no authentication in the Method)

5d - Authentication - Token without Claims; authentication in Controller

5e - Authentication - Token with 1 Claim; authentication in Controller

5f - Authentication - Token with 2 Claims; authentication in Controller

5g - Authentication - Token with 3 Claims; authentication in Controller

5h - Authentication - Token with 10 Claims; authentication in Controller

5i - Authentication - Token without Claims; authentication in Method

5j - Authentication - Token with 1 Claim; authentication in Method

5k - Authentication - Token with 2 Claims; authentication in Method

5l - Authentication - Token with 3 Claims; authentication in Method

5m - Authentication - Token with 10 Claims; authentication in Method

6 - Web Api POST calls (without BODY parameter)

    6a - No authentication (No OAuth2 relied server in the pipeline)

6b - No authentication (OAuth2 relied server in the pipeline; no authentication in the Controller)

6c - No authentication (OAuth2 relied server in the pipeline; no authentication in the Method)

6d - Authentication - Token without Claims; authentication in Controller

6e - Authentication - Token with 1 Claim; authentication in Controller

6f - Authentication - Token with 2 Claims; authentication in Controller

6g - Authentication - Token with 3 Claims; authentication in Controller

6h - Authentication - Token with 10 Claims; authentication in Controller

6i - Authentication - Token without Claims; authentication in Method

6j - Authentication - Token with 1 Claim; authentication in Method

6k - Authentication - Token with 2 Claims; authentication in Method

6l - Authentication - Token with 3 Claims; authentication in Method

6m - Authentication - Token with 10 Claims; authentication in Method

7 - Web Api POST calls (with BODY parameter: Geometry)

    7a - No authentication (No OAuth2 relied server in the pipeline)

7b - No authentication (OAuth2 relied server in the pipeline; no authentication in the Controller)

7c - No authentication (OAuth2 relied server in the pipeline; no authentication in the Method)

7d - Authentication - Token without Claims; authentication in Controller

7e - Authentication - Token with 1 Claim; authentication in Controller

7f - Authentication - Token with 2 Claims; authentication in Controller

7g - Authentication - Token with 3 Claims; authentication in Controller

7h - Authentication - Token with 10 Claims; authentication in Controller

7i - Authentication - Token without Claims; authentication in Method

7j - Authentication - Token with 1 Claim; authentication in Method

7k - Authentication - Token with 2 Claims; authentication in Method

7l - Authentication - Token with 3 Claims; authentication in Method

7m - Authentication - Token with 10 Claims; authentication in Method

Run each of these steps sequentially, for the time specified in [login to view URL], and with the quantity of Theads specified in appsettings.json.

And the quantity of elements to be executed within each step, specified in appsettings.json.

Measure the time of execution for each step, as well as the quantity of executed calls, and show this results data on the screen.

The purpose of this Utility is to determine how much performance impact the OAuth2 Token Generation has, and also how much performance impact the OAuth2 Token authentication takes on Web Api Core 2.1 Controllers.

DELIVERABLE: Visual Studio 2017 Solution with DotNet Core 2.1 project source code.

IMPORTANT REMARK: The OAuth2 Server works locally in my VM. The source code is proprietary and may NOT be copied outside this VM. The OAuth2 server is not exposed to the internet, so it is required to work inside this VM, also to not influentiate the measurements due to network latencyor network speed and network delays.

BUDGET: USD 45 MAX

.NET OAuth

หมายเลขโปรเจค: #17709998

เกี่ยวกับโปรเจกต์

2 ข้อเสนอ โปรเจกต์ระยะไกล ใช้งาน %project.latestActivity_relativeTime|แทนที่%

freelancer 2 คน กำลังเสนอราคาในงานนี้ โดยมีราคาเฉลี่ยอยู่ที่ $292

shopshoppy

can do

$333 USD ใน 1 วัน
(0 รีวิว)
0.0
StackTracers

can make this for u in 7 days. its not much complicated, just some work on threads and oauth. Will do this for you within a week. let me know if you want it done. thanks.

$250 USD ใน 7 วัน
(0 รีวิว)
0.0