1.如果有多个事件需要订阅,你会怎么设计,是每一个都作为一个topic吗?
每一个事件都列一个topic是可行的,每个事件响应后直接处理,但是你在订阅的时候可能会有些麻烦,而且不利于后期扩展,如果后面你又多了一个主题需要订阅,那么客户端和服务端都需要重新添加相应的接口,一旦订阅的数量很多,不利于管理。
解决办法,可以利用一个接口去处理,利用JSON数据格式去统一输出,根据字段的类型去在客户端判断是什么事件,订阅方便,利于扩展。
例如:
{
"ID":"01",//用ID来判断具体要做的事件
"DATA":[“data body”,“1234”],//用data来代表要订阅的内容,可以为字符串,数值,数组等格式
"KEY":"null", //用KEY来作为加密用的密钥
}