Skip to main content

Glossary

TermDescription
ABIApplication Binary Interface. In general, an ABI is the interface between two program modules, one of which is often at the level of machine code. The interface is the default method for encoding/decoding data into/out of the machine code. In Ethereum, it's basically how you can encode Solidity smart contract calls for the EVM and, backwards, how to read the data out of transactions.
Accept/Relay MessageWhen connecting two blockchains, a mechanism named bridge is used to send transactions from a chain to another. Accept Message and Relay Message are part of that mechanism. More specifically, a smart contract or user willing to send a message to the other chain can call the relayMessage function on the smart contract, and the Bridge contract on the second chain will then automatically call your contract with the acceptMessage function.
BridgeA Bridge in blockchain, is a connection between two blockchains that allows to pass arbitrary messages between two blockchains.
EnvelopeAn envelope in Orchestrate is a package of data that is passed between two workers. This envelopes or messages will be published to or consumed from a topic.
EVMEthereum Virtual Machine is a formal model of a virtual state machine. It is a quasi-Turing complete machine; the quasi qualification comes from the fact that the computation is intrinsically bounded through a parameter, gas, which limits the total amount of computation done.
FaucetA faucet on blockchain is an address that serves as an address holding credit enough to do micro-credits to other addresses soliciting for it. Each faucet will have their own rules on who and how will be credited. [Orchestrate's Faucet Service]
GasGas in Ethereum is a measurement roughly equivalent to computational steps. Every transaction is required to include a gas limit and a fee that it is willing to pay per gas. If the total number of gas used by the computation spawned by the transaction, including the original message and any sub-messages that may be triggered, is less than or equal to the gas limit, then the transaction processes. If the total gas exceeds the gas limit, then all changes are reverted, except that the transaction is still valid and the fee can still be collected by the miner. [Source]
Kafka TopicA Topic is a category/feed name to which messages are stored and published. Messages are byte arrays that can store any object in any format. As said before, all Kafka messages are organized into topics. If you wish to send a message you send it to a specific topic and if you wish to read a message you read it from a specific topic. Producer applications write data to topics and consumer applications read from topics. Messages published to the cluster will stay in the cluster until a configurable retention period has passed by. Kafka retains all messages for a set amount of time, and therefore, consumers are responsible to track their location. [Kafka Apache doc]
Marshal / UnmarshalGolang terminology calls marshal the function of generating a JSON string from a data structure, and unmarshal the act of parsing JSON into a data structure.
NonceA nonce in Orchestrate context is a transaction counter in each account, that ensures transactions being processed in the right order.
PayloadTransaction payload is the bytecode data sent along with the transaction request. Meaning this all the information being sent to the blockchain for it to mine the transaction.
ProtobufProtocol buffers are a flexible, efficient, automated mechanism for serializing structured data. It could compare to XML, but smaller, faster, and simpler. You define how you want your data to be structured once, then you can use special generated source code to easily write and read your structured data to and from a variety of data streams and using a variety of languages. You can even update your data structure without breaking deployed programs that are compiled against the "old" format. [Source]
(Orchestrate) RequestObjects corresponding to an Orchestrate Request (names ending by 'Request') belong to requests made by the user to Orchestrate.
(Orchestrate) ResponseObjects corresponding to an Orchestrate Response (names ending by 'Response') belong to answers given by Orchestrate to the user.
TopicA Kafka topic is a category or feed name to which messages are stored and published. Producer applications write data to topics, and consumer applications read data from topics. [Kafka topic]
Smart ContractSmart contracts are programs whose terms are recorded in a computer language instead of legal language. Smart contracts are automated actions that can be coded and executed once a set of conditions is met.
WeiWei is the smallest denomination of ether, the cryptocurrency used on the Ethereum network. 1 Ether = 1,000,000,000,000,000,000 Wei (1018).
WorkerA worker is a single independent module being part of a larger application. Each worker will execute some specific work, usually consuming the output of another worker, and generating a result that may be fetched by a different worker.