订阅者/发布者模式，自定义消息类型的工具库