toxiproxy
etcd
Our great sponsors
toxiproxy | etcd | |
---|---|---|
25 | 61 | |
10,300 | 46,345 | |
1.5% | 1.1% | |
6.7 | 9.9 | |
13 days ago | 3 days ago | |
Go | Go | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
toxiproxy
-
Speedbump – a TCP proxy to simulate variable network latency
Checkout also shopify's awesome tool called toxiproxy: https://github.com/Shopify/toxiproxy
It turns out to be also a very good way to test a networking library by implementing it. Since your stack needs to be able to basically handle most adverse events properly.
The idea behind 'chaos engineering' is cool.
- Toxiproxy – simulate network and system conditions for chaos testing
-
Twenty-five open-source network emulators and simulators you can use in 2023
I use this to simulate delays between various local services:
https://github.com/Shopify/toxiproxy
If you have Docker all you need is a few terminal commands
-
Artificially Producing Poor Internet?
Idk about firewall level, but application level I’d recommend https://github.com/Shopify/toxiproxy
-
Regarding default TCP setting in Golang and how it effects speed
That's why I usually recommend anybody that develops network critical apps to test their app with something like toxiproxy and purposfully mess with their connections and simulate network issues.
-
Performance testing with slow connection and packet loss
We use this thing. https://github.com/Shopify/toxiproxy I am not sure that it supports windows, but you can install it to the Linux machine and route your application under the test to that proxy.
-
Speedbump - a TCP proxy for simulating variable network latency
On the same vibes as https://github.com/Shopify/toxiproxy
-
Ask HN: How do I force network failures during development against remote APIs?
https://github.com/Shopify/toxiproxy is a perfect solution for that. I used it quite successfully years ago and it looks like it's still pretty active.
-
Is there a tool to control bandwidth for debugging purposes?
Looking at the toxiproxy you mentioned, it seems like it should do what you want though? TLS is generally over TCP anyway, so it should still be able to throttle those connections - it just wont understand the encryption. I also saw a pull request for having it act as a TLS man-in-the-middle proxy: https://github.com/Shopify/toxiproxy/pull/270
etcd
-
Oracle Linux 8.8'de PostgreSQL 13 Yedekli Yapı Nasıl Kurulur? - Patroni, ETCD, HAProxy
sudo dnf -y install curl wget vim ETCD_RELEASE=$(curl -s https://api.github.com/repos/etcd-io/etcd/releases/latest|grep tag_name | cut -d '"' -f 4) echo $ETCD_RELEASE wget https://github.com/etcd-io/etcd/releases/download/${ETCD_RELEASE}/etcd-${ETCD_RELEASE}-linux-amd64.tar.gz tar xvf etcd-${ETCD_RELEASE}-linux-amd64.tar.gz cd etcd-${ETCD_RELEASE}-linux-amd64 sudo mv etcd* /usr/local/bin ls /usr/local/bin /usr/local/bin/etcd --version
-
Transitioning from more traditional OOP like C# to Go, what are the biggest coding style differences.
Reading the standard library will give you ideas/insight about various Go idiomatic patterns/approaches, and you can see a full website/API implementation in the pkg.go.dev repository (https://github.com/golang/pkgsite). Projects like https://github.com/etcd-io/etcd may be interesting too.
-
Fault Tolerance in Distributed Systems: Strategies and Case Studies
Failure Detection and Recovery It’s not enough to have backup systems. It’s also crucial to detect failures quickly. Modern systems employ monitoring tools and rely on distributed coordination systems such as Zookeeper or etcd to identify faults in real-time: once detected, recovery mechanisms are triggered to restore the service.
-
The Complete Microservices Guide
Service Discovery: Microservices need to discover and communicate with each other dynamically. Service discovery tools like etcd, Consul, or Kubernetes built-in service discovery mechanisms help locate and connect to microservices running on different nodes within the infrastructure.
-
How is Apache APISIX Fast?
APISIX uses etcd to store and synchronize configurations.
-
Apache APISIX without etcd
etcd is an excellent key-value distributed database used internally by Kubernetes and managed by the CNCF. It's a great option, and that's the reason why Apache APISIX uses it too. Yet, it's not devoid of issues.
-
From /etc to database
Someone on HN (https://news.ycombinator.com/item?id=36682595) suggested etcd (https://etcd.io)
-
Evaluating Apache APISIX vs. Spring Cloud Gateway
In traditional mode, APISIX stores its configuration in etcd. APISIX offers a rich API to access and update the configuration, the Admin API. In standalone mode, the configuration is just plain YAML. It's the approach for GitOps practitioners: you'd store your configuration in a Git repo, watch it via your favorite tool (e.g., Argo CD or Tekton), and the latter would propagate the changes to APISIX nodes upon changes. APISIX reloads its configuration every second or so.
- Implementing a distributed key-value store on top of implementing Raft in Go
-
RedisRaft
I am not sure neither. But this might overcome the etcd's soft storage limit of 8GB? [1]
[1] https://github.com/etcd-io/etcd/issues/9771
What are some alternatives?
rkt
consul - Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.
heka - DEPRECATED: Data collection and processing made easy.
minio - The Object Store for AI Data Infrastructure
Hugo - The world’s fastest framework for building websites.
Vault - A tool for secrets management, encryption as a service, and privileged access management
Juju - Orchestration engine that enables the deployment, integration and lifecycle management of applications at any scale, on any infrastructure (Kubernetes or otherwise).
Apache ZooKeeper - Apache ZooKeeper
nes - NES emulator written in Go.
nsq - A realtime distributed messaging platform
Docker - Notary is a project that allows anyone to have trust over arbitrary collections of data
traefik - The Cloud Native Application Proxy