microsoft / Etcd3
Licence: other
🔖 Node.js client for etcd3
Stars: ✭ 336
Programming Languages
javascript
184084 projects - #8 most used programming language
typescript
32286 projects
js
455 projects
Projects that are alternatives of or similar to Etcd3
Dotnet Etcd
A C# .NET (dotnet) GRPC client for etcd v3 +
Stars: ✭ 157 (-53.27%)
Mutual labels: grpc, etcd
Hyperf
🚀 A coroutine framework that focuses on hyperspeed and flexibility. Building microservice or middleware with ease.
Stars: ✭ 4,206 (+1151.79%)
Mutual labels: grpc, etcd
Google Maps Services Python
Python client library for Google Maps API Web Services
Stars: ✭ 3,443 (+924.7%)
Mutual labels: client-library
Grpc Web Hacker News
An example app implementing a Hacker News reader in React with gRPC-Web and Go backend
Stars: ✭ 294 (-12.5%)
Mutual labels: grpc
Surging
Surging is a micro-service engine that provides a lightweight, high-performance, modular RPC request pipeline. The service engine supports http, TCP, WS,Grpc, Thrift,Mqtt, UDP, and DNS protocols. It uses ZooKeeper and Consul as a registry, and integrates it. Hash, random, polling, Fair Polling as a load balancing algorithm, built-in service gove…
Stars: ✭ 3,088 (+819.05%)
Mutual labels: grpc
Grpcox
Like Postman, but for gRPC: web based GUI client for gRPC Development Testing
Stars: ✭ 333 (-0.89%)
Mutual labels: grpc
Waterdrop
💧Waterdrop is a high performance micro service framework. Waterdrop comes from (The Three Body Problem).
Stars: ✭ 305 (-9.23%)
Mutual labels: etcd
Rejoiner
Generates a unified GraphQL schema from gRPC microservices and other Protobuf sources
Stars: ✭ 3,432 (+921.43%)
Mutual labels: grpc
Postgresql cluster
PostgreSQL High-Availability Cluster (based on "Patroni" and "DCS(etcd)"). Automating deployment with Ansible.
Stars: ✭ 294 (-12.5%)
Mutual labels: etcd
Tonic
A native gRPC client & server implementation with async/await support.
Stars: ✭ 4,422 (+1216.07%)
Mutual labels: grpc
Skyapm Php Sdk
The PHP instrument agent for Apache SkyWalking
Stars: ✭ 292 (-13.1%)
Mutual labels: grpc
Gokv
Simple key-value store abstraction and implementations for Go (Redis, Consul, etcd, bbolt, BadgerDB, LevelDB, Memcached, DynamoDB, S3, PostgreSQL, MongoDB, CockroachDB and many more)
Stars: ✭ 314 (-6.55%)
Mutual labels: etcd
Mediasoup Client
mediasoup client side JavaScript library
Stars: ✭ 320 (-4.76%)
Mutual labels: client-library
Stolon
PostgreSQL cloud native High Availability and more.
Stars: ✭ 3,481 (+936.01%)
Mutual labels: etcd
etcd3
etcd3 aims is a high-quality, production-ready client for the Protocol Buffer-based etcdv3 API. It includes:
- load balancing
- fault handling and reconnections
- transactions
- software transactional memory
- high-level query builders
- lease management
- watchers
- user and role mocking management
- elections
and is type-safe for TypeScript consumers.
Quickstart
Install via:
npm install --save etcd3
Start building!
const { Etcd3 } = require('etcd3');
const client = new Etcd3();
(async () => {
await client.put('foo').value('bar');
const fooValue = await client.get('foo').string();
console.log('foo was:', fooValue);
const allFValues = await client.getAll().prefix('f').keys();
console.log('all our keys starting with "f":', allFValues);
await client.delete().all();
})();
API Documentation
Our TypeDoc docs are available here.
Our test cases are also readable.
Running tests
$ npm install
$ cd src/test/containers/3.2 && docker-compose up # in a separate shell
$ npm test
$ docker-compose down
Contributing
Running tests for this module requires running an etcd3 server locally. The tests try to use the default port initially, and you can configure this by setting the ETCD_ADDR
environment variable, like export ETCD_ADDR=localhost:12345
.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.
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].