Skip to content
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

go-vshard-1: init golang vshard library #470

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

KaymeKaydex
Copy link

@KaymeKaydex KaymeKaydex commented Jan 29, 2024

since the tarantool router is a stateless application, we did a small implementation of the router in golang, we did several performance tests that showed positive results

in the case of the router, we took resources from the golang service and gave them to tarntool routers

the library allows you to avoid unnecessary network trips and speed up the route map update due to golang runtime
; now we use https://github.com/KaymeKaydex/go-vhsard-router but we want to get official support

we want to hear some feedback on this topic and review, now there are several non-critical todos, as well as an unfinished readme. Before finishing I would like to know your opinion and feedback

new topology scheme:
Снимок экрана 2024-01-29 в 13 40 11

@spatecon
Copy link

Seems legit

@KaymeKaydex
Copy link
Author

we found more productive hardware and got more interesting bench results, unfortunately without tarantool-vshard-proxy for now. We haven't been able to overclock it to the maximum yet and the rps is too small, we're trying to get the maximum

more details https://github.com/KaymeKaydex/go-vhsard-router

Copy link
Collaborator

@Gerold103 Gerold103 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi! Thanks for the nice patch! Looks amazing that it doesn't seem too big and yet works fine, from what I see. I couldn't find any errors here, and the code looks mostly the same as the Lua router, which is cool.

I can't judge the Go specific places though, since I don't know it well. Also to the 'todo' in vshard.go file in the end - you don't really need them I think. Those are crutches specific for tarantool runtime. In your router they don't seem needed.

However regardless of how cool the patch is, I can't really merge it, sorry. It looks out of place, at least without proper testing infrastructure, CI, and lots lots of tests. We only have Lua and C test runners, unfortunately.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants