搜索
查看: 7342|回复: 4

[新人贴]zeromq与protobuf配合使用有哪些便利?

  [复制链接]

39

主题

205

帖子

1351

积分

四级会员

Rank: 6Rank: 6

积分
1351
发表于 2012-7-2 15:37:15 | 显示全部楼层 |阅读模式
          最近在学习 namwonsta 制作的zeromq教程,并阅读了aardio的标准库文件,发觉message已经能处理除基本数据类型外的pointer,cdata类型,我之前不认识zeromq和protobuf时觉得这两者搭配使用是很便利的,而且也看到论坛也把这两者归到一个帖子分类里面。
         当然我也查阅了一些protobuf的资料,说是一个性能优越的序列化/反序列化工具,适合开发分布式的PRC框架....
但是如果我是想使用zeromq实现一个类似QQ的聊天工具(可能包含文件传输等应用功能),使用protobuf能提供哪些便利呢???本人初识zeromq 与 protobuf ,期望大大指教。
回复

使用道具 举报

20

主题

325

帖子

1945

积分

新手入门

积分
1945
发表于 2012-7-2 16:23:18 | 显示全部楼层

zeromq、protobuf是为分布式云计算设计的,提供了3种基本的传输方式,不太适合做im软件。

zeromq、protobuf是为分布式云计算设计的,提供了3种基本的传输方式,不太适合做im软件。
回复

使用道具 举报

4

主题

874

帖子

4704

积分

荣誉会员

Rank: 8Rank: 8

积分
4704
发表于 2012-7-2 16:29:14 | 显示全部楼层

如果只是在aardio内部交换数据,用table就可以, 如果需要与js交换数据,可以考虑json,明文,编程简洁。 protobuf他的优势是对于传输

如果只是在aardio内部交换数据,用table就可以,
如果需要与js交换数据,可以考虑json,明文,编程简洁。

protobuf他的优势是对于传输比较大的数据产生的数据很紧凑很小,可以明显减小传输量。
而且处理速度也比较快,又有各种编程语言的实现,例如C++,Java,PHP等等。
缺点是不能明文编辑(数据是二进制的)。

如果你希望在不同编程语言之间交互数据,或者在分布式程序中减小网络传输数据量,
使用protobuf是一个不错的选择.

aardio提供protobuf工具,可以方便的生成protobuf类。
回复

使用道具 举报

39

主题

205

帖子

1351

积分

四级会员

Rank: 6Rank: 6

积分
1351
 楼主| 发表于 2012-7-3 10:13:41 | 显示全部楼层

[quote][size=2][color=#999999]不争 发表于 2012-7-2 16:29[/color] [url=forum.php?mod=r

不争 发表于 2012-7-2 16:29
如果只是在aardio内部交换数据,用table就可以,
如果需要与js交换数据,可以考虑json,明文,编程简洁。
...

ok,多谢你的回答
回复

使用道具 举报

13

主题

108

帖子

732

积分

三级会员

Rank: 4

积分
732
QQ
发表于 2012-11-12 23:53:27 | 显示全部楼层

[quote][size=2][color=#999999]不争 发表于 2012-7-2 16:29[/color] [url=forum.php?mod=r

不争 发表于 2012-7-2 16:29
如果只是在aardio内部交换数据,用table就可以,
如果需要与js交换数据,可以考虑json,明文,编程简洁。
...

我用aardio建立A与B两个程序,同时操作一个sqlite的库。但是多线程处理不好,总出现锁定的情况
所以我想A与B产生的所有的sql消息 加入队列,然后由C按顺序去处理。不知道这样设计合理不合理?
我是电车男!!!
记住!
我为人人,人人为我
想了解我名字由来请加QQ:502121980
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|站长邮箱|aardio.com|aardio官方社区 ( 皖ICP备09012014号 )

GMT+8, 2018-12-16 15:43 , Processed in 0.062500 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表