Browse Source

add rpc server proposal [ci skip]

pull/549/head
Anton Kaliaev 7 years ago
parent
commit
b893df3348
No known key found for this signature in database GPG Key ID: 7B6881D965918214
1 changed files with 34 additions and 0 deletions
  1. +34
    -0
      docs/hidden/adr-003.md

+ 34
- 0
docs/hidden/adr-003.md View File

@ -0,0 +1,34 @@
# ADR 1: Must an ABCI-app have an RPC server?
## Context
ABCI-server could expose its own RPC-server and act as a proxy to Tendermint.
The idea was for the Tendermint RPC to just be a transparent proxy to the app.
Clients need to talk to Tendermint for proofs, unless we burden all app devs
with exposing Tendermint proof stuff. Also seems less complex to lock down one
server than two, but granted it makes querying a bit more kludgy since it needs
to be passed as a `Query`. Also, **having a very standard rpc interface means
the light-client can work with all apps and handle proofs**. The only
app-specific logic is decoding the binary data to a more readable form (eg.
json). This is a huge advantage for code-reuse and standardization.
## Decision
We dont expose an RPC server on any of our ABCI-apps.
## Status
accepted
## Consequences
### Positive
- Unified interface for all apps
### Negative
- `Query` interface
### Neutral

Loading…
Cancel
Save