Compare commits

..

No commits in common. "09c7345e685296d42508e98d0d35161a920feaf5" and "2390f8fb8d046b4f5aa12c1af80a1357e0fd2ba3" have entirely different histories.

15 changed files with 12 additions and 64 deletions

View File

@ -1,20 +0,0 @@
FROM mcr.microsoft.com/dotnet/sdk:6.0-alpine AS build-env
WORKDIR /App
# Copy everything
COPY * .
# Restore as distinct layers
RUN dotnet restore
# Build a release
RUN dotnet build -c Release -o out
# Build runtime image
FROM mcr.microsoft.com/dotnet/aspnet:6.0-alpine
WORKDIR /App
COPY --from=build-env /App/out .
ENTRYPOINT ["dotnet", "/App/TCC.APP.dll"]

View File

@ -1,9 +0,0 @@
{
"Logging": {
"LogLevel": {
"Default": "Trace",
"Microsoft.AspNetCore": "Trace"
}
},
"AllowedHosts": "*"
}

View File

@ -3,7 +3,7 @@
namespace TCC.Controllers namespace TCC.Controllers
{ {
[ApiController] [ApiController]
[Route("status")] [Route("")]
public class StatusController : ControllerBase public class StatusController : ControllerBase
{ {
public StatusController() { } public StatusController() { }

View File

@ -1,3 +1,4 @@
using Microsoft.AspNetCore.Http.Features;
using Microsoft.AspNetCore.Server.Kestrel.Core; using Microsoft.AspNetCore.Server.Kestrel.Core;
using TCC.Services; using TCC.Services;

View File

@ -14,7 +14,7 @@
"dotnetRunMessages": true, "dotnetRunMessages": true,
"launchBrowser": false, "launchBrowser": false,
"launchUrl": "weatherforecast", "launchUrl": "weatherforecast",
"applicationUrl": "http://0.0.0.0:5100", "applicationUrl": "http://localhost:5100",
"environmentVariables": { "environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development" "ASPNETCORE_ENVIRONMENT": "Development"
} }

9
appsettings.json Normal file
View File

@ -0,0 +1,9 @@
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*"
}

View File

@ -1,33 +0,0 @@
import requests
import concurrent.futures
import time
URL_BASE = 'http://localhost:5100'
num_requests = [1000, 5000, 10_000, 50_000, 100_000, 500_000, 1_000_000]
def send_request(session, url):
response = session.get(url)
return response.status_code
def main():
for num_request in num_requests:
with concurrent.futures.ThreadPoolExecutor(max_workers=10) as executor:
url = f'{URL_BASE}/status/ok'
start_time = time.time()
futures = []
with requests.Session() as session:
futures = [executor.submit(send_request, session, url) for _ in range(num_request)]
concurrent.futures.wait(futures)
elapsed_time = time.time() - start_time
successful_responses = sum(1 for future in futures if future.result() == 200)
print(f"All requests completed in {elapsed_time:.2f} seconds. {elapsed_time/num_request:.4f} seconds per request. {num_request/elapsed_time:.2f} requests per second.")
print(f"Successful responses: {successful_responses}/{num_request}")
main()