You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Create an RPC service that can be used by the NetworkController to make RPC requests. This service would be responsible for intelligently retrying failed requests, and for avoid undue network load using exponential backoff, jitter, and circuit breaker patterns. This would be in accordance with the External API Integrations ADR: https://github.com/MetaMask/decisions/blob/main/decisions/core/0002-external-api-integrations.md
This would live alongside the NetworkController, not within it. It would be a separate package export. Whether it's in its own package or not can be a decision for the author, that is less important.
The text was updated successfully, but these errors were encountered:
Instead of having the service take onBreak and onDegraded callbacks, we could consider having the service emit events, and emit separate events for the primary RPC endpoint vs. the failover RPC endpoints. This way clients could react to the failover status at each appropriately, and we'd also give the network controller a way to react to the status as well (if we, say, need to capture in state which RPC endpoint among a primary and list of failovers is the active one).
We could also keep things simple and make this change in #4992, whichever makes the most sense.
Create an RPC service that can be used by the NetworkController to make RPC requests. This service would be responsible for intelligently retrying failed requests, and for avoid undue network load using exponential backoff, jitter, and circuit breaker patterns. This would be in accordance with the External API Integrations ADR: https://github.com/MetaMask/decisions/blob/main/decisions/core/0002-external-api-integrations.md
This would live alongside the NetworkController, not within it. It would be a separate package export. Whether it's in its own package or not can be a decision for the author, that is less important.
The text was updated successfully, but these errors were encountered: