cto-core | cto-porter | cto-explorer | fluentd-cto | cto-loginput
│ │ │
front│ │bot │fluentd
│ │ ▼
┌─┴───┴─┐ ┌──────────┐
┌─────►│ │ │ │
│ │porter │ │ loginput ├────┐
│ ┌────┤ │ │ │ │
│ │ └┬──┬──┬┘ └┬─────────┘ r│
│ │ │ │ │ │ ┌─┴─┐
│ │ │ └──┼───┼───────────►│pg │
│ │ rw│ │ │ rw └─┬─┘
│ │ ▼ ▼ ▼ │
│ │ w┌───┐ ┌───────┐ r│
├─┼──►│ c │ │ mq │ │
│ │ └───┘ └─┬───┬─┘ │
│ │ query │ │loginput │
│ │ fanout│ │fanout │
│ │ │ │ │
│ │ choose ┌─┴───┴─┐ replicated │
│ │ one │ core │ stateful ─┘
│ └────────►│ │ cores
│ └┬──────┘
│ callback │
└◄───────────┘
- core - meant to be replicated (one replica per node)
- loginput - can be replicated
- porter - not sure...
- mq - can be replicated through quorum queues
- pg - can be replicated cockroachdb
- c - sure, why not