abci: clarify what abci stands for (#336)

* abci: clarify what abci stands for

* link to abci type protos.
This commit is contained in:
William Banfield
2021-08-19 17:04:31 -04:00
committed by GitHub
parent e44ab95f2f
commit 26ee62aa52

View File

@@ -7,14 +7,15 @@ parent:
# ABCI
ABCI stands for "**A**pplication **B**lock**c**hain **I**nterface".
ABCI is the interface between Tendermint (a state-machine replication engine)
and your application (the actual state machine). It consists of a set of
_methods_, where each method has a corresponding `Request` and `Response`
message type. Tendermint calls the ABCI methods on the ABCI application by sending the `Request*`
messages and receiving the `Response*` messages in return.
_methods_, each with a corresponding `Request` and `Response`message type.
To perform state-machine replication, Tendermint calls the ABCI methods on the
ABCI application by sending the `Request*` messages and receiving the `Response*` messages in return.
All message types are defined in a [protobuf file](https://github.com/tendermint/tendermint/blob/master/proto/tendermint/abci/types.proto).
This allows Tendermint to run applications written in any programming language.
All ABCI messages and methods are defined in [protocol buffers](https://github.com/tendermint/spec/blob/master/proto/abci/types.proto).
This allows Tendermint to run with applications written in many programming languages.
This specification is split as follows: