加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 用于将发布/注释的多个数据对象序列化为单个序列化数据

发布时间:2020-12-14 19:13:52 所属栏目:Java 来源:网络整理
导读:我正在开发Java和Cassandra数据库之上的社交应用程序.我需要在数据库中存储用户共享帖子的帖子/评论,我希望每个评论/帖子然后将序列化数据存储在一列中的数据库中.因此,对于每个评论,将有一个列以序列化格式存储此数据: 评论数据(最多约700个字符的字符串)

我正在开发Java和Cassandra数据库之上的社交应用程序.我需要在数据库中存储用户共享帖子的帖子/评论,我希望每个评论/帖子&然后将序列化数据存储在一列中的数据库中.因此,对于每个评论,将有一个列以序列化格式存储此数据: –

>评论数据(最多约700个字符的字符串)
> CommentorId(长型)
> CommentTime(时间戳)

同样,帖子的数据将被序列化并存储为单个列.

前端在每次检索该帖子时都需要快速反序列化.

我正在寻找协议缓冲区作为可能的解决方案.想知道为此任务选择协议缓冲区是否是正确的选择.我正在寻找一个高性能的&快速序列化&反序列化算法,可以在应用程序中大量使用.

是否可以将数据以序列化格式发送给客户端,然后可以对其进行反序列化?服务器到客户端通信?

最佳答案
协议缓冲区肯定提供了序列化,虽然事情的RPC方面是你想象的(通常简单和基于套接字的工作非常好).

protobuf都支持数据类型(尽管您可能希望在日期的unix时期使用ms之类的东西).请注意,protobuf不包括压缩(除非您还将gzip等应用于流).所以消息将“比字符串长一点(它总是在protobuf中使用UTF-8编码).我说”有点“因为整数类型的varint算法可以为id提供1到10个字节之间的任何内容和时间戳,取决于它们的大小.字段标题的一些(3个,可能)字节.

如果听起来不错,那么它应该可以正常工作.但是,如果您有大量文本数据,则可能还需要通过gzip运行protobuf流. Java通过主谷歌主干在protobuf中提供了出色的支持.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读