Utility Token Economics Model - blockchain of executions
Tags: blockchain, microservices, design, cosmossdk
Published: 2020-02-19 11:07:56


#Blockchain of executions
The [MESG Token](https://mesg.com/token) is the fuel for the [MESG Network](https://docs.mesg.com/guide/network/?utm_source=devto&utm_medium=economy#public-networks), and its primary use is to create executions. MESG is a blockchain of executions and any node on the network can process executions and get rewarded for their work.

The goal of an execution is to execute a specific task through a service. Services can be created by any developers wishing to deploy their tasks on the MESG Network.

To understand the economy of the MESG Token, we need to understand the lifecycle of an execution.

##Execution lifecycle:
- The user requests an execution of a specific task from a service
- Executors process the execution and submit the result
- Validators reach a consensus on the validity of the executors' work
- Block producers verify the legitimacy of every actor in this execution

An incentive is put in place with the MESG Token as a reward to ensure that actors are doing the work correctly.


#MESG Economy
##Actors on the network
The MESG Network is an open network where anyone can join and participate in the economy. Each actor has a different role with different incentives in order to maintain a balance within the network. There are no limitations to the number of actors that the same node can have. You can either have a single actor per node, or have all actors on a single node.

###Users
Users can execute any task from any service without worrying about the hassle of maintaining a server or using online services that require monthly fees. In this case, the user would pay on-demand using MESG Tokens and would only pay for what is needed when it's needed.

To guarantee that the service is running correctly, the user can run a Runner and execute the task directly. With this configuration, MESG is used as a traditional server, but still passes through a network, providing fallback in case of server issues.

###Developers
Executions on the network are based on the services that are created by developers. Like any software, maintenance is required to ensure its quality. To incentivize developers to maintain their services, the developer receives rewards based on the use of their service.

Every execution on the network rewards the service's developer, ensuring a reward that's proportional to the use of the service.

To guarantee the availability of their service, developers might want to run their services on their own, ensuring that the network can always process executions related to this service.

###Runners
The network relies on runners to process the different executions. Runners are specific to a service, however a single service can feature multiple runners, and a single node can run multiple services. Runners have 3 different roles:

###Emitters create executions on behalf of the user based on their Processes. Processes create autonomous applications that can be connected to external events.

Executors process the executions on the network. Executors are given a specific task with a set of inputs then return the results of this task.
Validators ensure that the work of the executor is valid by either reapplying the execution or executing a verification function.

Becoming a runner requires a stake that helps guarantee a few things:

- The work produced has correct results.
- The runner stays available anytime.
If any of these conditions is not met, the runner loses a portion of its stake. The network can also exclude a runner for a specified period of time.

To incentivize runners, a reward is given for each execution that is processed. This reward is meant to ensure a beneficial the ratio between the cost of running a Runner, and its associated reward, for all actors on the network.

###Block producers
The network relies on block producers to validate executions along with the authenticity of every actor. Block production on the network is open to anyone and requires a stake for the same reason as the Runner. If a block producer is offline or provides invalid results, a portion of its stake is taken and jail time is applied. Rewards are distributed to block producers when the network is secured correctly.

Check out the full article here: https://blog.mesg.com/token-utility-in-the-mesg-economy/