/ Consensus / Proposing / Receptioning
Receptioning
collects requests from customers and consortium members
This is a non-deterministic service, A merge of clients requests
- Send Requests over the network via Client.hs
- Receive Request via Server.hs
- Append Non Idempotently Request directly into the Packaging Input Stream
Receptioning
is Polymorphic by
- The Log Engine used
- The Business Logic used on top of the consensus layer (requests in that context)
- The type of server used
You'll find in this folder different version of Service.hs "polymorphically reduced" and concrete
- Over the event store
- Service.hs
- Over Dolla Dummy Requests
- Service.hs
- Over Warp using Servant library (concrete version)
Receptioning
has some DevOps features as well
- Settings.hs always into a separated project
xxxx-receptioning-settings
for deployment purposes in Zeus - Dependencies.hs are derived from Settings if sub-dependencies are all Healthy
- Perform the HealhtChecks to obtain the pipeline dependencies
- Execute the server
- Put the Microservice back in HealthCheck mode if any Exception bubbles up in the server during execution.
N.B : Microservice configuration and Deployment (Locally/Simulated/Production etc...) are defined in the package Zeus