And if you're more interested in the thought process behind, we did a presentation of what led us to this architecture https://docs.google.com/presentation/d/1kGiHfMMjf-OL7ZUODttu...
If you have any question or feedback they're very welcome :-)