protocol buffer应用场景方案想法

刚进公司,给了个活,了解protocol buffer,应用这个技术给通信做打包和拆包

现在还没拿到公司这块的代码,但是对于工业物联网的项目,报文的消息应该是多样的,用端对端都是同一个消息体显然是不切实际的

那就是接下来的问题了目前想到三个解决方式

两端都维护消息体的protocol生产的java文件,在生产的byte数组前,两外加一些字节负责存放这个类的一些信息,以便接收方可以知道接收的数据属于哪个实体类

这种方式又出现两个解决方式,一是傻瓜式得维护一个类似switch case的方式,通过消息体带的标识,直接转到哪个分支,用什么类去反解成实体类,这个方式最大的缺点就是需要维护这个Switchcase,对修改不友好

第二种方式是,获得类的信息,通过反射的方式,得到类,调用反解方法

说到第二种方式,在网上查到的通过标记类信息反解,用descriptor的方式来做,就有点疑惑,既然我能拿到类的信息,为啥我还要用descriptor来搞反解,为啥不一步到位直接调用这个对象反解

 

第三种方式就是动态解析

上一篇:dubbo SPI机制与Protocol自适应扩展问题


下一篇:Wireshark教程之二:Wireshark捕获数据分析