A high-throughtput, distributed, publish-subscribe messaging system based on memory mapped file and Thrift RPC