Skip to content

Commit f7edfc0

Browse files
authored
feat: remove net-questdb-client-tcp-auth, implement tcp auth with System.Security.Cryptography (#41)
1 parent 57cd3f9 commit f7edfc0

18 files changed

+297
-444
lines changed

net-questdb-client.sln

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "example-streaming", "src\ex
2121
EndProject
2222
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "example-auth-http-tls", "src\example-auth-http-tls\example-auth-http-tls.csproj", "{24D93DBB-3783-423F-81CC-6B9BFD33F6CD}"
2323
EndProject
24-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "net-questdb-client-tcp-auth", "src\net-questdb-client-tcp-auth\net-questdb-client-tcp-auth.csproj", "{EF86C5A3-71BE-4D9C-9647-B1A50751F244}"
25-
EndProject
26-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "net-questdb-client-tcp-auth-test", "src\net-questdb-client-tcp-auth-tests\net-questdb-client-tcp-auth-tests.csproj", "{628A6AE1-C0D4-4A40-98DF-1F094BD60203}"
27-
EndProject
2824
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "example-aot", "example-aot\example-aot.csproj", "{5341FCF0-F71D-4160-8D6E-B5EFDF92E9E8}"
2925
EndProject
3026
Global
@@ -72,14 +68,6 @@ Global
7268
{24D93DBB-3783-423F-81CC-6B9BFD33F6CD}.Debug|Any CPU.Build.0 = Debug|Any CPU
7369
{24D93DBB-3783-423F-81CC-6B9BFD33F6CD}.Release|Any CPU.ActiveCfg = Release|Any CPU
7470
{24D93DBB-3783-423F-81CC-6B9BFD33F6CD}.Release|Any CPU.Build.0 = Release|Any CPU
75-
{EF86C5A3-71BE-4D9C-9647-B1A50751F244}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
76-
{EF86C5A3-71BE-4D9C-9647-B1A50751F244}.Debug|Any CPU.Build.0 = Debug|Any CPU
77-
{EF86C5A3-71BE-4D9C-9647-B1A50751F244}.Release|Any CPU.ActiveCfg = Release|Any CPU
78-
{EF86C5A3-71BE-4D9C-9647-B1A50751F244}.Release|Any CPU.Build.0 = Release|Any CPU
79-
{628A6AE1-C0D4-4A40-98DF-1F094BD60203}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
80-
{628A6AE1-C0D4-4A40-98DF-1F094BD60203}.Debug|Any CPU.Build.0 = Debug|Any CPU
81-
{628A6AE1-C0D4-4A40-98DF-1F094BD60203}.Release|Any CPU.ActiveCfg = Release|Any CPU
82-
{628A6AE1-C0D4-4A40-98DF-1F094BD60203}.Release|Any CPU.Build.0 = Release|Any CPU
8371
{5341FCF0-F71D-4160-8D6E-B5EFDF92E9E8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
8472
{5341FCF0-F71D-4160-8D6E-B5EFDF92E9E8}.Debug|Any CPU.Build.0 = Debug|Any CPU
8573
{5341FCF0-F71D-4160-8D6E-B5EFDF92E9E8}.Release|Any CPU.ActiveCfg = Release|Any CPU

src/net-questdb-client-benchmarks/BenchConnectionChurn.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ public async Task RandomTableEveryRow()
7575
{
7676
var sender =
7777
Sender.New(
78-
$"http::addr=localhost:{_httpPort};auto_flush=on;auto_flush_rows={BatchSize};pool_limit={ConnectionLimit};");
78+
$"http::addr=localhost:{_httpPort};auto_flush=on;auto_flush_rows={BatchSize};");
7979

8080
for (var i = 0; i < RowsPerIteration; i++)
8181
{

src/net-questdb-client-benchmarks/BenchConnectionChurnVsServer.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ public async Task HttpRandomTableEveryRow()
7171
{
7272
var sender =
7373
Sender.New(
74-
$"http::addr=localhost:{_httpPort};auto_flush=on;auto_flush_rows={BatchSize};auto_flush_interval=-1;pool_limit={ConnectionLimit};");
74+
$"http::addr=localhost:{_httpPort};auto_flush=on;auto_flush_rows={BatchSize};auto_flush_interval=-1;");
7575

7676
for (var i = 0; i < RowsPerIteration; i++)
7777
{

src/net-questdb-client-benchmarks/BenchConnectionChurnVsServer2.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ public async Task HttpRandomTableEveryRow()
7171
{
7272
var sender =
7373
Sender.New(
74-
$"http::addr=localhost:{_httpPort};auto_flush=on;auto_flush_rows={BatchSize};auto_flush_interval=-1;pool_limit={ConnectionLimit};");
74+
$"http::addr=localhost:{_httpPort};auto_flush=on;auto_flush_rows={BatchSize};auto_flush_interval=-1;");
7575

7676
for (var i = 0; i < RowsPerIteration; i++)
7777
{
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
```
2+
3+
BenchmarkDotNet v0.13.12, macOS Sonoma 14.6.1 (23G93) [Darwin 23.6.0]
4+
Apple M1, 1 CPU, 8 logical and 8 physical cores
5+
.NET SDK 9.0.101
6+
[Host] : .NET 9.0.0 (9.0.24.52809), Arm64 RyuJIT AdvSIMD
7+
8+
Job=MediumRun Toolchain=InProcessNoEmitToolchain IterationCount=15
9+
LaunchCount=1 WarmupCount=10
10+
11+
```
12+
| Method | BatchSize | ConnectionLimit | NumberOfTables | RowsPerIteration | Mean | Error | StdDev |
13+
|------------------------ |---------- |---------------- |--------------- |----------------- |---------:|----------:|----------:|
14+
| **HttpRandomTableEveryRow** | **5000** | **1** | **10** | **100000** | **44.68 ms** | **3.335 ms** | **2.604 ms** |
15+
| TcpRandomTableEveryRow | 5000 | 1 | 10 | 100000 | 32.14 ms | 9.528 ms | 8.913 ms |
16+
| **HttpRandomTableEveryRow** | **5000** | **4** | **10** | **100000** | **43.29 ms** | **3.398 ms** | **3.178 ms** |
17+
| TcpRandomTableEveryRow | 5000 | 4 | 10 | 100000 | 46.26 ms | 19.924 ms | 18.637 ms |
18+
| **HttpRandomTableEveryRow** | **5000** | **16** | **10** | **100000** | **46.13 ms** | **2.873 ms** | **2.688 ms** |
19+
| TcpRandomTableEveryRow | 5000 | 16 | 10 | 100000 | 29.94 ms | 7.944 ms | 7.042 ms |
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
Method,Job,AnalyzeLaunchVariance,EvaluateOverhead,MaxAbsoluteError,MaxRelativeError,MinInvokeCount,MinIterationTime,OutlierMode,Affinity,EnvironmentVariables,Jit,LargeAddressAware,Platform,PowerPlanMode,Runtime,AllowVeryLargeObjects,Concurrent,CpuGroups,Force,HeapAffinitizeMask,HeapCount,NoAffinitize,RetainVm,Server,Arguments,BuildConfiguration,Clock,EngineFactory,NuGetReferences,Toolchain,IsMutator,InvocationCount,IterationCount,IterationTime,LaunchCount,MaxIterationCount,MaxWarmupIterationCount,MemoryRandomization,MinIterationCount,MinWarmupIterationCount,RunStrategy,UnrollFactor,WarmupCount,BatchSize,ConnectionLimit,NumberOfTables,RowsPerIteration,Mean,Error,StdDev
2+
HttpRandomTableEveryRow,MediumRun,False,Default,Default,Default,Default,Default,Default,00000000,Empty,RyuJit,Default,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,InProcessNoEmitToolchain,Default,Default,15,Default,1,Default,Default,Default,Default,Default,Default,16,10,5000,1,10,100000,44.68 ms,3.335 ms,2.604 ms
3+
TcpRandomTableEveryRow,MediumRun,False,Default,Default,Default,Default,Default,Default,00000000,Empty,RyuJit,Default,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,InProcessNoEmitToolchain,Default,Default,15,Default,1,Default,Default,Default,Default,Default,Default,16,10,5000,1,10,100000,32.14 ms,9.528 ms,8.913 ms
4+
HttpRandomTableEveryRow,MediumRun,False,Default,Default,Default,Default,Default,Default,00000000,Empty,RyuJit,Default,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,InProcessNoEmitToolchain,Default,Default,15,Default,1,Default,Default,Default,Default,Default,Default,16,10,5000,4,10,100000,43.29 ms,3.398 ms,3.178 ms
5+
TcpRandomTableEveryRow,MediumRun,False,Default,Default,Default,Default,Default,Default,00000000,Empty,RyuJit,Default,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,InProcessNoEmitToolchain,Default,Default,15,Default,1,Default,Default,Default,Default,Default,Default,16,10,5000,4,10,100000,46.26 ms,19.924 ms,18.637 ms
6+
HttpRandomTableEveryRow,MediumRun,False,Default,Default,Default,Default,Default,Default,00000000,Empty,RyuJit,Default,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,InProcessNoEmitToolchain,Default,Default,15,Default,1,Default,Default,Default,Default,Default,Default,16,10,5000,16,10,100000,46.13 ms,2.873 ms,2.688 ms
7+
TcpRandomTableEveryRow,MediumRun,False,Default,Default,Default,Default,Default,Default,00000000,Empty,RyuJit,Default,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,InProcessNoEmitToolchain,Default,Default,15,Default,1,Default,Default,Default,Default,Default,Default,16,10,5000,16,10,100000,29.94 ms,7.944 ms,7.042 ms
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
<!DOCTYPE html>
2+
<html lang='en'>
3+
<head>
4+
<meta charset='utf-8' />
5+
<title>net_questdb_client_benchmarks.BenchConnectionChurnVsServer2-20250715-122026</title>
6+
7+
<style type="text/css">
8+
table { border-collapse: collapse; display: block; width: 100%; overflow: auto; }
9+
td, th { padding: 6px 13px; border: 1px solid #ddd; text-align: right; }
10+
tr { background-color: #fff; border-top: 1px solid #ccc; }
11+
tr:nth-child(even) { background: #f8f8f8; }
12+
</style>
13+
</head>
14+
<body>
15+
<pre><code>
16+
BenchmarkDotNet v0.13.12, macOS Sonoma 14.6.1 (23G93) [Darwin 23.6.0]
17+
Apple M1, 1 CPU, 8 logical and 8 physical cores
18+
.NET SDK 9.0.101
19+
[Host] : .NET 9.0.0 (9.0.24.52809), Arm64 RyuJIT AdvSIMD
20+
</code></pre>
21+
<pre><code>Job=MediumRun Toolchain=InProcessNoEmitToolchain IterationCount=15
22+
LaunchCount=1 WarmupCount=10
23+
</code></pre>
24+
25+
<table>
26+
<thead><tr><th>Method </th><th>BatchSize</th><th>ConnectionLimit</th><th>NumberOfTables</th><th>RowsPerIteration</th><th>Mean</th><th>Error</th><th>StdDev</th>
27+
</tr>
28+
</thead><tbody><tr><td>HttpRandomTableEveryRow</td><td>5000</td><td>1</td><td>10</td><td>100000</td><td>44.68 ms</td><td>3.335 ms</td><td>2.604 ms</td>
29+
</tr><tr><td>TcpRandomTableEveryRow</td><td>5000</td><td>1</td><td>10</td><td>100000</td><td>32.14 ms</td><td>9.528 ms</td><td>8.913 ms</td>
30+
</tr><tr><td>HttpRandomTableEveryRow</td><td>5000</td><td>4</td><td>10</td><td>100000</td><td>43.29 ms</td><td>3.398 ms</td><td>3.178 ms</td>
31+
</tr><tr><td>TcpRandomTableEveryRow</td><td>5000</td><td>4</td><td>10</td><td>100000</td><td>46.26 ms</td><td>19.924 ms</td><td>18.637 ms</td>
32+
</tr><tr><td>HttpRandomTableEveryRow</td><td>5000</td><td>16</td><td>10</td><td>100000</td><td>46.13 ms</td><td>2.873 ms</td><td>2.688 ms</td>
33+
</tr><tr><td>TcpRandomTableEveryRow</td><td>5000</td><td>16</td><td>10</td><td>100000</td><td>29.94 ms</td><td>7.944 ms</td><td>7.042 ms</td>
34+
</tr></tbody></table>
35+
</body>
36+
</html>

src/net-questdb-client-tcp-auth-tests/TcpTests.cs

Lines changed: 0 additions & 172 deletions
This file was deleted.

src/net-questdb-client-tcp-auth-tests/net-questdb-client-tcp-auth-tests.csproj

Lines changed: 0 additions & 38 deletions
This file was deleted.

src/net-questdb-client-tcp-auth/Secp256r1SignatureGenerator.cs

Lines changed: 0 additions & 26 deletions
This file was deleted.

0 commit comments

Comments
 (0)