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

Make "fastest group" more sticky #298

Open
cbuijs opened this issue Apr 14, 2023 · 3 comments
Open

Make "fastest group" more sticky #298

cbuijs opened this issue Apr 14, 2023 · 3 comments

Comments

@cbuijs
Copy link
Contributor

cbuijs commented Apr 14, 2023

The type = fastest group is great, but maybe we can make it even greaterder :-).

Make it more sticky (as an option), where after a while firing queries to all resolvers, get more sticky to the fastest one more, decrease the number of parallel queries and test "fastest" over time (and decrease frequency as well) to make sure we stay "fast".

It is called Smoothed Round Trip Time (SRTT), see here: https://ns1.com/blog/srtt-and-recursive-dns-resolvers

This will bring down the load and number of queries and potentially more servers can be used in the pool for redundancy reasons. besides it being super-cool to have ;-).

@folbricht
Copy link
Owner

Interesting idea. Quite like how that reduces the overhead by not sending multiple queries. It differs quite a bit from the current implementation of fastest, so perhaps it might be best to come up with a new entity for it, rather than overloading the existing one.

@cbuijs
Copy link
Contributor Author

cbuijs commented Apr 14, 2023

That makes sense. I like the construct a lot, and you can see the difference quite well. I like it adapts on the go as well. Which is even nicer.

@cbuijs
Copy link
Contributor Author

cbuijs commented Aug 22, 2023

We can close this as it is a "nice to have". Keeping it open just for visibility.

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

No branches or pull requests

2 participants