-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
nutella 2.0 should have the following features
- Written in Typescript / support only JS (no more Ruby)
- Commands server and CLI. There is a main command server process that runs continuously and all it does is take commands from the CLI (or the library via APIs) to start / stop runs etc.
- Everything needs to be supported via APIs and via nutella_lib that implements the APIs fully
- Everything is tested
- Everything is logged, no more tmux
- Scalability as first citizen, control plane separate from data plane
- Data plane is running simulations (bots) and serving clients (interfaces)
- Control Plane is spinning up new simulations / classrooms and providing control over the whole system
- Production mode and dev mode. dev mode CLI is a combo of running infra elements locally (like the broker) and running nutella components. Production mode assumes the components are running already independently and are already there (so we can scale them independently)
- Everything via the broker, the broker runs as a piece of scalable infrastructure
- Bots runs everywhere they want, so we can scale, no specific location, so we need control plane in separate location, not a single API server, depends on location. How do we keep the map of where stuff is running? Global state that keeps track of where everywhere is running
- Cloud native application, use cloud fully, not single servers. Assume multiple of everything
Metadata
Metadata
Assignees
Labels
No labels