Multilayered architecture on Ethereum
by Héctor Ugarte
Lets consider the next facts:
- Smarts contracts can be written in different languages (one of them Solidity), and they will be stored on the blockchain on a precompiled format).
- As you may know ethereum recommends to use “existing web development skills, tools, and favorite frameworks “ to develop User Interfaces.
In an architectural hardware point of view:
- Smart contracts are replicated on the blockchain that works on a P2P environment.
- UI framework, and connectivity, for the moment relies on a client-server architecture. Maybe in a future, P2P environments will also be used.
Multilayered architecture is defined as: “…is a software architecture that uses many layers for allocating the different responsibilities of a software product”.
For this purpose, 3 most common layers:
- Presentation layer: Lets consider all the elements working on the the web browser environment, even if all this environment can be splited on its own on different layers, from a general point of view, on Ethereum, they form the presentation layer. [FRONTEND]
- Application layer: Is formed by the smart contracts, [BACKEND]
- Data access layer: Data is stored on the transactions, and could be also stored outside the blockchain (f.e. with IPFS)