The client-dispatcher-server design pattern