Code Monkey home page Code Monkey logo

ct-dns's People

Contributors

guanw avatar stickler-ci[bot] avatar

Watchers

 avatar  avatar

ct-dns's Issues

make separate service to polling health

heartbeat -> (optional: kafka ->) api server -> redis ttl record

idea 1: health check agent on individual host of running service.

idea 2: service constantly reports themselves to ct-dns backend and set ttl.

idea 3: separate service doing health check after scanning all available services.

service registration design

On startup, new service host should be able to register their host/port/etc information with ct-dns. Brainstorm the best way to do it.

clean up reading config

support reading config from yml, make it as priority compared to passing via command flags?

Example to integrate with envoy

To start:

implement /v2/discovery:endpoints and /v1/registration/{serviceName} (done by #50 and #51 )

https://medium.com/@salmaan.rashid/envoy-control-plane-hello-world-2f49b2865f29

TODO 1

next: use go-control-plane to implement v2

https://www.lijiaocn.com/%E9%A1%B9%E7%9B%AE/2018/12/29/envoy-07-features-2-dynamic-discovery.html#%E5%AE%89%E8%A3%85go-control-plane

  1. try to implement a minimum working server.Server with gateway at front first for current envoy.yaml to work.
  2. update envoy.yaml to make eds query working with grpc instead of http.

Update: (This might not be needed as I only intend to provide EDS implementation as an example)
Also see this

TODO 2

support specifying multiple services dynamically?

add a retry handler

Scenario: if the write/get from store fails, it might be due to random reason like instable network.
Should add protection mechanism for retry to minimize this type of impact.

add readme

  1. schema for dynamodb
  2. setup for etcd/redis/dynamodb etc
  3. how to run ct-dns in docker container
  4. how to run ct-dns with redis in kubernetes

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.