Architecture overview
U°OS system architecture is based on the open source EOSIO framework, but implements the new DPoI consensus algorithm (as a separate library) and the original DApp content platform U°Community, deployed on U°OS blockchain.
This U°Community DApp plays an important role, allowing for social and economic interactions between members of the network.
We have several types of nodes in the system, connected via the peer-to-peer protocol, namely, api, block producer, calculator, and seed nodes. Nodes that have a connection between each other are called peer nodes. Nodes can be accessed by the owner alone or by any user via private or public APIs, respectively. Every node, irregardless of their type, performs the following activities:
- synchronizes and distributes pending transactions into new blocks and new blocks between the peer nodes via peer-to-peer connection
- communicates with the other programs and receives the information about the state of the blockchain (accounts, token sums, list of block producers, voting results, smart contracts, data tables, transaction blocks, and others) via private and public APIs.
The node types are briefly defined as follows:
Block producer node — owned by the block producer, issues blocks according to the schedule and distributes them among the peer nodes
Calculator node — calculates user importance scores, based on social and financial transactions from irreversible blocks, and saves the results to the blockchain
Seed node — a node, that has a public peer-to-peer connection, it is used by the new network participants, when they join the network
API node — a node with a public API
For a general architecture documentation, please, refer, to our online GitHub docs:
https://github.com/UOSnetwork/ucom.backend/blob/master/documentation/ARCHITECTURE.md#common-information
For a detailed visual scheme representation of the system, please, visit this link:
https://github.com/UOSnetwork/ucom.backend/blob/master/documentation/jpg/current-workflows.jpg
And a production infrastructure schema:
https://github.com/UOSnetwork/ucom.backend/tree/master/documentation
Updated over 5 years ago