All Projects → tailhook → abstract-ns

tailhook / abstract-ns

Licence: Apache-2.0, MIT licenses found Licenses found Apache-2.0 LICENSE-APACHE MIT LICENSE-MIT
Abstract name service traits for rust

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to abstract-ns

juno-agent
juno-agent
Stars: ✭ 46 (+170.59%)
Mutual labels:  service-discovery
Uragano
Uragano, A simple, high performance RPC library. Support load balancing, circuit breaker, fallback, caching, intercepting.
Stars: ✭ 28 (+64.71%)
Mutual labels:  service-discovery
dnsdisco
DNS service discovery library
Stars: ✭ 25 (+47.06%)
Mutual labels:  service-discovery
L3-37
Yet another Tokio connection pooler. May cause robot uprising.
Stars: ✭ 53 (+211.76%)
Mutual labels:  tokio
tsukuyomi
Asynchronous Web framework for Rust
Stars: ✭ 81 (+376.47%)
Mutual labels:  tokio
hyper-proxy
A proxy connector for Hyper-based crates
Stars: ✭ 73 (+329.41%)
Mutual labels:  tokio
go-bmi
Body Mass Index(BMI) application developed by go-chassis microservice framwork
Stars: ✭ 14 (-17.65%)
Mutual labels:  service-discovery
ldap3
A pure-Rust LDAP library using the Tokio stack
Stars: ✭ 161 (+847.06%)
Mutual labels:  tokio
fubuki
Simple VPN implemented using rust
Stars: ✭ 85 (+400%)
Mutual labels:  tokio
blogr-pve
Puppet provisioning of HA failover/cluster environment implemented in Proxmox Virtual Environment and Linux boxes.
Stars: ✭ 28 (+64.71%)
Mutual labels:  service-discovery
ais-service-discovery-go
Cloud application library for Golang
Stars: ✭ 77 (+352.94%)
Mutual labels:  service-discovery
microservices4vaadin
Sample application to show the secured integration of microservices and vaadin
Stars: ✭ 30 (+76.47%)
Mutual labels:  service-discovery
tokio-imap
Tokio-based IMAP implementation
Stars: ✭ 110 (+547.06%)
Mutual labels:  tokio
meio
Rust actors alternative to Erlang/OTP
Stars: ✭ 152 (+794.12%)
Mutual labels:  tokio
etcdenv
Use your etcd keys as environment variables
Stars: ✭ 23 (+35.29%)
Mutual labels:  service-discovery
sample-kotlin-ktor-microservices
sample microservices written in Kotlin that demonstrates usage of Ktor framework woth Consul server
Stars: ✭ 37 (+117.65%)
Mutual labels:  service-discovery
delay-timer
Time-manager of delayed tasks. Like crontab, but synchronous asynchronous tasks are possible scheduling, and dynamic add/cancel/remove is supported.
Stars: ✭ 257 (+1411.76%)
Mutual labels:  tokio
promswarmconnect
Bridges Docker Swarm services to Prometheus without any changes to Prometheus
Stars: ✭ 25 (+47.06%)
Mutual labels:  service-discovery
microservices-developer-roadmap
Roadmap for becoming a Microservice Developer in 2017
Stars: ✭ 24 (+41.18%)
Mutual labels:  service-discovery
hydra-router
A service aware router for Hydra Services. Implements an API Gateway and can route web socket messages.
Stars: ✭ 59 (+247.06%)
Mutual labels:  service-discovery

Abstract Name Service

Status: Beta

Documentation | Github | Crate

This rust crate provides just abstract traits which may be used to build interoperable implementations of name dicovery.

We want abstract_ns to have implementations not only for DNS-based name discovery but also Zookeeper, Eureka, Etcd, Consul, and whatever other thing you might imagine. All of them easily configured and interchangeable.

Features:

  • Defines what is a name and what is a result of service discovery
  • Uses futures-rs for asynchronous stuff
  • Has interface to receive updates (name changes)
  • Allows some kind of name service routing, i.e. has a way to specify different resolvers for different names, for example: serve *.consul from local consul, other names from conventional DNS servers.

This repository also contains the following crates:

  • ns-std-threaded a name resolution implementation that uses stdlib resolver running in a thread pool
  • ns-dns-tokio an pure-rust implementation that uses domain crate to resolve domains asynchronously in tokio-core main loop

Note: abstract-ns v0.2 is very different product than v0.1

License

Licensed under either of

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].