Architecture

Melonade are 3 services and clients (they all scalable)

  • Process manager

    • Dispatch task to client

    • Validate event from client then save to store

    • Process manager have it's own store that only keep running transaction and current status (Supported Redis and Mongo)

  • Time keeper

    • Watch of tasks if timed out, then send event to process manager

    • Delay the dispatched tasks

    • Cron job transaction (Not supported yet)

  • Event logger

    • Consume store topic and save to permanent store (Only support Elasticsearch in this time)

  • Client (worker)

    • Consume task on it's topic, process then update status back to process manager

Last updated