We should have some sort of profiling in place to find potential bottlenecks particularly around message processing. We could explore integrating [flamegraph](https://github.com/flamegraph-rs/flamegraph) and/or [pprof](https://github.com/tikv/pprof-rs) or [samply](https://github.com/mstange/samply) which has better MacOS support