Since we mentioned it in our last team meeting, it would be interesting to start a discussion on what kind of unikernels we should focus on building.
Next post is a wiki so we can list the ideas for candidate unikernels and start defining how services can be split.
This topic should also serve to experiment with performance and resource usage so we can compare message passing between unikernels vs. unix sockets or processes on a single machine. There’s no deadline yet for this research but feel free to chime in and invite knowledgeable people, e.g., from the MirageOS team.
the message router is required to talk to other local components and to remote nodes
dromedar needs the message router and pub/sub components
This is something we can fine tune over time, as we use message passing both in-process among internal components and among external components over the network.
an initial suggestion for the components:
message router
upsycle components
dromedar
the upsycle part consists of several services (peer sampling, clustering, per-topic dissemination), i would bundle these together initially then see if/how it makes sense to split them up