Design a Pub Sub System - Low-level design | OneNoughtOne