Git Product home page Git Product logo

Comments (7)

0xERR0R avatar 0xERR0R commented on August 17, 2024

Which version of blocky do you use currently? Maybe #749 is relevant for you.

from blocky.

PeterDaveHello avatar PeterDaveHello commented on August 17, 2024

@0xERR0R v0.20 the latest stable release. Will take a look at #749, thanks.

from blocky.

PeterDaveHello avatar PeterDaveHello commented on August 17, 2024

@0xERR0R looks like there's still a little bit different, but maybe not important at all.

According to the document, here's the description of startVerifyUpstream

If true, blocky will fail to start unless at least one upstream server per group is reachable.

So looks like current policy is to check all the upstreams once to make sure at least one of them works, or check none of them, and then start to serve. What I'm thing about is still to check them all, but once any of upstreams is working, then start to serve, not to wait for the check completed.

from blocky.

ThinkChaos avatar ThinkChaos commented on August 17, 2024

If startVerifyUpstream is true, blocky exits directly if all of the upstreams fail.
The easiest way get the behavior you want, is to rely on whatever manages your blocky server (docker, systemd, etc.) to restart it if it fails. That way it will retry the startup checks until at least one upstream works.

To implement this behavior in blocky, we could change startVerifyUpstream to accept something like retry where it retries to startup regularly. But I'm not convinced that's a good fit for blocky.
Maybe just having a specific exit code for "startup checks failed" would be enough so that the process manager can be more intelligent about when to restart blocky.

from blocky.

PeterDaveHello avatar PeterDaveHello commented on August 17, 2024

Just leave a record that it takes about minutes starting to resolve queries if there are many upstream 😅

from blocky.

github-actions avatar github-actions commented on August 17, 2024

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment or this will be closed in 5 days.

from blocky.

ThinkChaos avatar ThinkChaos commented on August 17, 2024

Making Blocky test the resolvers in parallel could be a good improvement here.
We could also add a startStrategy option where fast would start immediately and use the bootstrap resolver (which defaults to the system resolver), and blocking would be the current behavior.

Both of those should not be too hard after #998 is merged.

from blocky.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.