From 6e003ea3e358a739038f600efe43fc69e98364a6 Mon Sep 17 00:00:00 2001 From: Bryan Stitt Date: Sat, 25 Jun 2022 02:45:50 +0000 Subject: [PATCH] todos --- TODO.md | 7 ++++++- config/example.toml | 6 +++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/TODO.md b/TODO.md index eeff9758..bfc85fc4 100644 --- a/TODO.md +++ b/TODO.md @@ -36,9 +36,13 @@ - [ ] endpoint for health checks. if no synced servers, give a 502 error - [ ] interval for http subscriptions should be based on block time. - [ ] todo: include private rpcs with regular queries? i don't want to overwhelm them, but they could be good for excess load +- [ ] refactor so configs can change while running + - create the app without applying any config to it + - have a blocking future watching the config file and calling app.apply_config() on first load and on change ## V1 +- [ ] stats when forks are resolved (and what chain they were on?) - [ ] incoming rate limiting (by api key) - [ ] failsafe. if no blocks or transactions in the last second, warn and reset the connection - [ ] improved logging with useful instrumentation @@ -55,7 +59,8 @@ - [ ] if the fastest server has hit rate limits, we won't be able to serve any traffic until another server is synced. - thundering herd problem if we only allow a lag of 0 blocks - we can fix this by only `publish`ing the sorted list once a threshold of total soft limits is passed -- [ ] emit stats for successes, failures, types of requests +- [ ] emit stats for successes, retries, failures, with the types of requests, account, chain, rpc +- [ ] automated soft limit ## V2 diff --git a/config/example.toml b/config/example.toml index 9a8f0386..d963691a 100644 --- a/config/example.toml +++ b/config/example.toml @@ -16,9 +16,9 @@ chain_id = 1 url = "https://rpc.flashbots.net" soft_limit = 1_000 - [balanced_rpcs.linkpool-light] - url = "https://main-light.eth.linkpool.io" - soft_limit = 1_000 + #[balanced_rpcs.linkpool-light] + #url = "https://main-light.eth.linkpool.io" + #soft_limit = 1_000 [balanced_rpcs.blastapi] url = "https://eth-mainnet.public.blastapi.io"