Difference between revisions of "Proxyd"

From wikieduonline
Jump to navigation Jump to search
 
(10 intermediate revisions by the same user not shown)
Line 3: Line 3:
 
* https://github.com/ethereum-optimism/infra/tree/main/proxyd
 
* https://github.com/ethereum-optimism/infra/tree/main/proxyd
  
  proxyd /etc/proxyd/[[proxyd.toml]] [[ws_method_whitelist]]
+
  proxyd /etc/proxyd/[[proxyd.toml]]: <code>[[ws_method_whitelist]], [[response_timeout_seconds]], [[out_of_service_seconds]], [[max_latency_threshold]]</code>
  
 
* Changelog: https://github.com/ethereum-optimism/infra/blob/main/proxyd/CHANGELOG.md
 
* Changelog: https://github.com/ethereum-optimism/infra/blob/main/proxyd/CHANGELOG.md
 
* Config: https://github.com/ethereum-optimism/infra/blob/main/proxyd/config.go
 
* Config: https://github.com/ethereum-optimism/infra/blob/main/proxyd/config.go
 +
** [[Proxyd config example]]: https://github.com/ethereum-optimism/infra/blob/main/proxyd/example.config.toml
 
* Releases: https://github.com/ethereum-optimism/infra/tags
 
* Releases: https://github.com/ethereum-optimism/infra/tags
  
Line 12: Line 13:
 
* [[Whitelists]] [[RPC methods]] ([[ws_method_whitelist]])
 
* [[Whitelists]] [[RPC methods]] ([[ws_method_whitelist]])
 
* Routes RPC methods to groups of backend services
 
* Routes RPC methods to groups of backend services
* Load balance requests across backend services
+
* [[Round-robin]] [[Load balance]] requests across [[backend]] services
 
* Automatically [[retries]] failed backend requests
 
* Automatically [[retries]] failed backend requests
 
* Cache immutable responses from backends
 
* Cache immutable responses from backends
Line 23: Line 24:
  
 
* Applies [[rate limiting]] (<code>[[SenderRateLimitConfig]]</code>) on a per-sender basis to avoid being bombarded with signed transactions causing a DOS (Denial of Service) of the sequencer ([[Optimism Censorship Bug Disclosure]])
 
* Applies [[rate limiting]] (<code>[[SenderRateLimitConfig]]</code>) on a per-sender basis to avoid being bombarded with signed transactions causing a DOS (Denial of Service) of the sequencer ([[Optimism Censorship Bug Disclosure]])
 +
 +
== [[Proxyd backend healthy]] ==
  
 
== Logs ==
 
== Logs ==
Line 38: Line 41:
 
* <code>[[backend banned - not healthy]]</code>
 
* <code>[[backend banned - not healthy]]</code>
 
* <code>[[backend banned - unexpected block tags]]</code>
 
* <code>[[backend banned - unexpected block tags]]</code>
* <code>proxied requests' [[XFF]] header will not contain the proxyd ip address</code>
+
* <code>proxied requests' [[XFF header will not contain the proxyd ip address]]</code>
 
* <code>[[peer count responded with 200 and 0 peers]]</code>
 
* <code>[[peer count responded with 200 and 0 peers]]</code>
 
* <code>[[failed request]]</code>
 
* <code>[[failed request]]</code>

Latest revision as of 15:41, 14 October 2024

proxyd is an RPC proxy

proxyd /etc/proxyd/proxyd.toml: ws_method_whitelist, response_timeout_seconds, out_of_service_seconds, max_latency_threshold

Features:

Consensus related:

  • Track backend consensus (latest, safe, finalized blocks), peer count and sync state
  • Re-write requests and responses to enforce consensus


Proxyd backend healthy[edit]

Logs[edit]

ERROR


WARN

INFO

Activities[edit]

Related[edit]

See also[edit]

Advertising: