How Holochain works?


How Holochain works?

Stakeholders

Any user (user agent) who want to use a decentralized application (hApp) developed on the Holochain pattern connect to this hApp like any traditional service on internet, by entering an URL on their browser. From here the user will receive the content from one or many of the hosts.

On the other side any person who want to host hApps can become a node (hosting agent) and be paid in HoloFuel currency for that. He can choose to host particular hApps or let the algorithm determine which applications to host.

Network

Each hApp have their own network of nodes and have an unlimited number of transactions per second because each new node (hosting agent) adds his hosting capacity and an hApp does not require a full synchronization between nodes, apart from the normal gossip of a DHT. But there's no sync problem, because there's no global state. All state is local, that mean a transaction is written to only the source chains of the agents who are party to the transaction, and then shared with some of the hosting agents depending on the redundancy factor.

So, if the redundancy factor for the DHT is 50, there's only 50 nodes who need to validate the transaction, even if there are 50,000 nodes running an hApp. The portion of work each node has to do actually gets smaller as the number of nodes grow instead of larger (as for global consensus systems).

In the background the hosting agents manage automatically the correct data distribution in order to avoid to overload one of these nodes and they also check the redundancy factor in order to keep the minimum of nodes with these data.

Holochain APP DNA