Closed BohuTANG closed 7 years ago
It seems like you are comparing apples to oranges in the benchmark as you are comparing a single connection vs a connection pool.
But I totally get your point. Unfortunately I don't think there is much we can do about it in this driver as most of the overhead is probably caused by database/sql itself or the driver interface forces us to introduce a lot of overhead. E.g. the type conversion is extremely inefficient but there is nothing we can do about it in the driver. Thus I worked on an alternative for a while about 2 years ago (I still haven't buried that idea).
We put a lot of effort in to optimizing this driver in the past, if you can still find possible optimizations, please report them / send pull requests.
And a side note: It seems like you reused some code, which is completely fine. But please attribute the authors correctly and respect this drivers license (e.g. redistribution under a BSD license is not allowed).
Got, the sql/database is a pain. Thanks for reminding the license. go-mysqlstack is based on mysqlproto-go and go-sql-driver, we have great respect for them, we will remove this repo, since he is the experiment.
On Sunday, 27 November 2016, Julien Schmidt notifications@github.com wrote:
And a side note: It seems like you reused some code, which is completely fine. But please attribute the authors correctly and respect this drivers license https://github.com/go-sql-driver/mysql/blob/master/LICENSE (e.g. redistribution under a BSD license is not allowed).
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/go-sql-driver/mysql/issues/523#issuecomment-263127337, or mute the thread https://github.com/notifications/unsubscribe-auth/AAKgrNSFlnOEb9b6vFUHaR3Ck0r12kifks5rCZ1ugaJpZM4K9Ki4 .
-- BohuTANG
"The great artist is the simplifier."--- Vincent Van Gogh
In case of any specific findings, please open a new issue / pull-request instead.
Issue description
From this benchmark: https://github.com/XeLabs/go-mysqlstack/blob/master/benchmarks/main.go go-sql-driver may has some GC problems:
go-mysqlstak does well for GC, the heap is almost constant even the reads very often. https://github.com/XeLabs/go-mysqlstack