-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
🎉 create project #4
Conversation
Here is the expected output of the benchmarks:
Select
Create
Upsert
Delete
Query
|
I updated the benchmark based on the new Websocket implementation and some changes on the Http implementation. N.B. 1: there are still many ways to improve the performance of this library, at least in terms of memory allocations. Will do some performance improvements it in the next coming weeks. N.B. 2 : The default Http client looks like it is the best solution but it is due to many factors (caching, single operation per benchmark invocation, single instanciation, etc...). I may need to create another benchmark with a complete workflow (authentication + CRUD + parallelism) to have a proper benchmark closer to a real application use.
Select
Create
Upsert
Delete
Query
|
Hii :D Is the The better approach would be to use |
Yes it is. My mistake. I fixed it. Thank you again for seeing this. |
I hope that I am correct. |
Hi Daniel. Those 2 licenses are different but they can be compatible. Because I am writing a C# library, and because I am using those libraries underneath, there is no problem whatsoever as long as I respect the terms and requirements of each project license. |
Hii :D What are your thoughts on substituting each exception with a discriminated union? I'm inquiring about this because Exception handling in .NET is not straightforward for a few reasons: |
This is an excellent question and I can understand your point of view. Exception handling is a very familiar pattern in C#. So most C# developers will expect to deal with exceptions rather than a discriminated union. On the contrary, if I was using F#, I would prefer discriminated union over exception. Regarding b). It is indeed something that has to be documented. I will double check to see if I did not miss any comment. Regarding c). Yes, this is true. But if the projects you use are well documented, I suppose that you could have an Analyzer at this time in your IDE to prevent uncaught exceptions. I say that but I don't have any myself at the momen if there was any... Hope this will be added in the future. |
36afdad
to
a66a844
Compare
f018868
to
c1d6286
Compare
I completed the migration to 1.0.0. The only missing feature is Live Query which will come very soon. I also added 2 benchmarks:
As you can see, we can see a huge performance improvements (in time) in the WS implementation from beta-9 to 1.0.0. Note that I still did not made any performance improvement since the last benchmark. You will certainly ask me why the 2s of cold start on WS implementation? This is indeed intriguing and I need to investigate to know why. Related to this issue Marfusios/websocket-client#100 Cold Start
Select
Create
Upsert
Delete
Query
Scenario
|
This is a naive implementation for a client SDK in .NET written in C#. (.NET standard 2.1)
Some details about the changes in this PR:
SurrealDbResponse
type: