Browse Source

[c#/beetlex] update 1.6.5.36-beta (#6344)

* update beetlex 1.4.3

update beetlex 1.4.3

* docker add COMPlus_ReadyToRun variable
update beetlex

* update beetlex, enabled thread queue

* beetlex framework add db and queries cases

* add db code

* change result json data

* update query url

* beetlex framework add fortunes cases

* change Content-Type

* add beetlex core cases

* fix queries cases

* update config

* change try readline

* update benchmark config

* Update README.md

* Update README.md

* change versus property

* beetlex-core update .net core to v3.0

* change beetlex-core project file

* beetlex update raw db class

* beetlex update raw db

* beetlex debug plaintext

* change debug docker file

* update beetlex to 1.4.0

* update

* beetlex update core 3.1

* [c#/beetlex] add updates cases

* [c#/beetlex] change Server: TFB, change custom connection pool, add update docker

* fix errors

* change pool init

* change connection pool maxsize

* fix fortunes errors

* clear DBRaw _connectionString value.

* [c#beetlex] change update dbconnection pool size

* [c#/beetlex] udpate spanjson to v3.0.1, Npgsql v5.0.0

* [c#/beetlex] add caching sample

* set connectionstring multiplexing

* remove connection multiplexing setting

* [c#/beetlex]change NpgsqlParameter to  NpgsqlParameter<T>

* [c#/beetlex] update dbraw

* [c#/beetlex] change connection string

* [c#/beetlex]  add fortunes cases to core-updb

* update beetlex 1.5.6

* update 5.0.0-alpha1

* update docker file

* Enabled IOQueues

* Set IOQueues debug mode

* update

* [c#/beetlex] udpate to v1.6.0.1-beta

* update pg drive

* [c#/beetlex] update to beetlex v1.6.3 and support pipelining

* set options

* [c#/beetlex] Optimized actions

* [c#/beetlex] update plaintext

* Bump ServiceStack in /frameworks/CSharp/servicestack/src/SelfHost

Bumps [ServiceStack](https://github.com/ServiceStack/ServiceStack) from 3.9.59 to 5.9.2.
- [Release notes](https://github.com/ServiceStack/ServiceStack/releases)
- [Commits](https://github.com/ServiceStack/ServiceStack/commits/v5.9.2)

Signed-off-by: dependabot[bot] <[email protected]>

* [c#/beetlex] change plaintext buffer size, optimize fortunes.

* [c#/beetlex] update v1.6.5,use System.Text.Json

* change docker files

* update beetlex 1.6.5.2

* [c#/beetlex] update v1.6.5.3-beta

* [c#/beetlex] update 1.6.5.36-beta

* update

* update json

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Henry 4 years ago
parent
commit
2348cc6c3a

+ 1 - 1
frameworks/CSharp/beetlex/PlatformBenchmarks/DBRaw.cs

@@ -167,7 +167,7 @@ namespace PlatformBenchmarks
             {
                 await db.OpenAsync();
                 FortuneCommand.Connection = db;
-                using (var rdr = await FortuneCommand.ExecuteReaderAsync(CommandBehavior.Default))
+                using (var rdr = await FortuneCommand.ExecuteReaderAsync())
                 {
                     while (await rdr.ReadAsync())
                     {

+ 16 - 14
frameworks/CSharp/beetlex/PlatformBenchmarks/HttpHandler.cs

@@ -99,30 +99,34 @@ namespace PlatformBenchmarks
             base.SessionReceive(server, e);
             PipeStream pipeStream = e.Session.Stream.ToPipeStream();
             HttpToken token = (HttpToken)e.Session.Tag;
-            var result = pipeStream.IndexOf(_line.Data);
+            var result = pipeStream.IndexOfLine();
             while (result.End != null)
             {
                 if (result.Length == 2)
                 {
-                    if (token.CurrentRequest != null)
+                    pipeStream.ReadFree(result.Length);
+                    if (Program.Debug)
                     {
-                        token.Requests.Enqueue(token.CurrentRequest);
-                        token.CurrentRequest = null;
-                        token.ThreadDispatcher.Enqueue(token);
+                        if (token.CurrentRequest != null)
+                        {
+                            token.Requests.Enqueue(token.CurrentRequest);
+                            token.CurrentRequest = null;
+                            token.ThreadDispatcher.Enqueue(token);
+                        }
                     }
-                    pipeStream.ReadFree(result.Length);
+                    else
+                    {
+                        OnStartRequest(token.CurrentRequest, e.Session, token, pipeStream);
+                    }
+
                 }
                 else
                 {
                     if (token.CurrentRequest == null)
                     {
                         var request = new RequestData();
-
                         byte[] buffer = null;
-                        if (Program.Debug)
-                            buffer = new byte[result.Length];
-                        else
-                            buffer = System.Buffers.ArrayPool<byte>.Shared.Rent(result.Length);
+                        buffer = new byte[result.Length];
                         pipeStream.Read(buffer, 0, result.Length);
                         request.Data = new ArraySegment<byte>(buffer, 0, result.Length);
                         AnalysisAction(request);
@@ -143,7 +147,7 @@ namespace PlatformBenchmarks
                     }
                 }
                 if (pipeStream.Length > 0)
-                    result = pipeStream.IndexOf(_line.Data);
+                    result = pipeStream.IndexOfLine();
                 else
                     break;
             }
@@ -287,8 +291,6 @@ namespace PlatformBenchmarks
                 OnWriteContentLength(stream, token);
                 await Default(stream, token, session);
             }
-            if (!Program.Debug)
-                data.Dispose();
 
         }
 

+ 2 - 2
frameworks/CSharp/beetlex/PlatformBenchmarks/PlatformBenchmarks.csproj

@@ -8,10 +8,10 @@
   </PropertyGroup>
 
   <ItemGroup>
-    <PackageReference Include="BeetleX" Version="1.6.5.3-beta" />
+    <PackageReference Include="BeetleX" Version="1.6.5.36-beta" />
     <PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="5.0.0" />
     <PackageReference Include="Microsoft.Extensions.Hosting" Version="5.0.0" />
-    <PackageReference Include="Npgsql" Version="5.0.0" />
+    <PackageReference Include="Npgsql" Version="5.0.3" />
     <PackageReference Include="SpanJson" Version="3.1.0" />
   </ItemGroup>
 

+ 1 - 1
frameworks/CSharp/beetlex/PlatformBenchmarks/RequestData.cs

@@ -18,7 +18,7 @@ namespace PlatformBenchmarks
         public void Dispose()
         {
 
-            System.Buffers.ArrayPool<byte>.Shared.Return(Data.Array);
+            //System.Buffers.ArrayPool<byte>.Shared.Return(Data.Array);
         }
 
         public string QueryString { get; set; }

+ 8 - 1
frameworks/CSharp/beetlex/PlatformBenchmarks/db.cs

@@ -16,7 +16,14 @@ namespace PlatformBenchmarks
             try
             {
                 var data = await token.Db.LoadSingleQueryRow();
-                System.Text.Json.JsonSerializer.Serialize<World>(GetUtf8JsonWriter(stream, token), data, SerializerOptions);
+                if (Program.Debug)
+                {
+                    await JsonSerializer.NonGeneric.Utf8.SerializeAsync(data, stream);
+                }
+                else
+                {
+                    System.Text.Json.JsonSerializer.Serialize<World>(GetUtf8JsonWriter(stream, token), data, SerializerOptions);
+                }
             }
             catch (Exception e_)
             {

+ 8 - 2
frameworks/CSharp/beetlex/PlatformBenchmarks/json.cs

@@ -27,8 +27,14 @@ namespace PlatformBenchmarks
 
         public ValueTask Json(PipeStream stream, HttpToken token, ISession session)
         {
-
-            System.Text.Json.JsonSerializer.Serialize<JsonMessage>(GetUtf8JsonWriter(stream, token), new JsonMessage { message = "Hello, World!" }, SerializerOptions);
+            if (Program.Debug)
+            {
+                System.Text.Json.JsonSerializer.Serialize<JsonMessage>(GetUtf8JsonWriter(stream, token), new JsonMessage { message = "Hello, World!" }, SerializerOptions);   
+            }
+            else
+            {
+                SpanJson.JsonSerializer.NonGeneric.Utf8.SerializeAsync(new JsonMessage { message = "Hello, World!" }, stream);
+            }
             OnCompleted(stream, session, token);
             return ValueTask.CompletedTask;
         }

+ 2 - 2
frameworks/CSharp/beetlex/PlatformBenchmarks/plaintext.cs

@@ -9,11 +9,11 @@ namespace PlatformBenchmarks
 {
     public partial class HttpHandler
     {
-        public Task Plaintext(PipeStream stream, HttpToken token, ISession session)
+        public ValueTask Plaintext(PipeStream stream, HttpToken token, ISession session)
         {
             stream.Write(_result_plaintext.Data, 0, _result_plaintext.Length);
             OnCompleted(stream, session, token);
-            return Task.CompletedTask;
+            return ValueTask.CompletedTask;
         }
     }
 }