Pavel Tupitsyn created IGNITE-13378:
---------------------------------------
Summary: .NET: Thin Client: Use non-blocking socket IO
Key: IGNITE-13378
URL:
https://issues.apache.org/jira/browse/IGNITE-13378 Project: Ignite
Issue Type: Bug
Components: platforms
Affects Versions: 2.4
Reporter: Pavel Tupitsyn
Assignee: Pavel Tupitsyn
.NET Thin Client was initially developed for Windows and .NET Framework. Benchmarks at that time proved that blocking socket IO was faster for single-threaded workload, and we developed a solution with a dedicated thread for response handling, and async APIs use blocking writes.
We may want to reconsider this design:
* Scalability is often more important than single-threaded performance
* .NET Core has many perf improvements over .NET Framework
Investigate async socket IO performance on .NET Core 3.x/5.x compared to the current approach on Windows and Linux and refactor ClientSocket accordingly to avoid any blocking and a dedicated thread usage.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)