文档章节

来看看Cap’n Proto’s的神器力量,让你的数据飞起来传输

uaisunshine
 uaisunshine
发布于 2015/04/23 15:24
字数 394
阅读 404
收藏 2

https://capnproto.org/

这是管网。capnproto其他语言我不知道,反正我的java现在是跑起来了。

看到没,首页就说了把原来他自己写的谷歌的protobuf给完全碾压了。

明显这家伙在谷歌工作的时候留了一手。

现在我来跟大家说说怎用。


第一个,下载java源码:

https://capnproto.org/otherlang.html

这里有各种语言的,选你学的语言就好了。

java 在这里:https://github.com/dwrensha/capnproto-java/

以java为例子,找到目录:examples/src/main/java/org/capnproto/examples

里面有个类AddressbookMain,但你放到项目是要报错的,因为你缺少这里面的东西:runtime/src/main/java/org/capnproto,放一起后错少了许多。现在我们就要纠结半天了,这个东西AddressBook,还有这个Person,到底哪里去了啊!别着急,现在就来生成这2个类。

第二步,下载cmd工具包,生成java 文件。

https://capnproto.org/capnproto-c++-win32-0.5.2.zip

https://dwrensha.ws/capnproto/capnpc-java.exe.zip

运行命令:capnp compile -o java addressbook.capnp

接下来神器的事就来了,他自动生成了一个java文件:AddressBook.java,把他放到自己项目里,报错就没了,那你就开始跑main方法吧!



把它跟fastjson的解析和格式化做了下对比,单位是毫秒,大家请看:

简直没法比,这东西快的让人不敢相信。

© 著作权归作者所有

共有 人打赏支持
uaisunshine
粉丝 2
博文 15
码字总数 4591
作品 0
成都
高级程序员
私信 提问
序列化/RPC 系统--Cap’n Proto

Cap’n Proto 是非常快速的数据交换格式和基于容量的 RPC 系统。类似 JSON,除了二进制;或者是 Protocol Buffers,除了更快。事实上,Cap’n Proto 比 Protocol Buffers 快无数倍。 当然,这...

叶秀兰
2015/09/28
1K
0
Protobuf 作者不建议在 Deno 中使用 Protobuf

0. 背景 我之前在"如何评价ry(Ryan Dahl)的新项目deno?"的回答中曾经写到: 我比较好奇的是 deno 使用了 Protobuf,而没有使用 Mojo。既然目标是要兼容浏览器,却不使用 Mojo... ... 但是从 ...

justjavac
06/27
0
0
多语言 公用的类型定义方式 Cap'n Proto

最近在折腾一个中间件的时候 ,用到了 Cap’n Proto 简单了解了一下, declaration names should use camelCase and must not contain underscores # 及定义类型的时候不能使用 小写或下滑线...

MtrS
2014/11/30
0
0
shell之netstat命令

语  法: netstat [-acCeFghilMnNoprstuvVwx] [-A][--ip] 补充说明: 利用netstat指令可让你得知整个Linux系统的网络情况。 参  数: -a 或–all 显示所有连线中的Socket。-A 或– 列出该...

品鉴初心
2017/12/06
0
0
python模块介绍- socket(1)

python模块介绍- socket 2013-03-11 磁针石 #承接软件自动化实施与培训等gtalk:ouyangchongwu#gmail.comqq 37391319 博客:http://blog.csdn.net/oychw #版权所有,转载刊登请来函联系 # 深圳...

长平狐
2013/12/25
242
0

没有更多内容

加载失败,请刷新页面

加载更多

Ubuntu18.04 安装MySQL

1.安装MySQL sudo apt-get install mysql-server 2.配置MySQL sudo mysql_secure_installation 3.设置MySQL非root用户 设置原因:配置过程为系统root权限,在构建MySQL连接时出现错误:ERROR...

AI_SKI
今天
2
0
3.6 rc脚本(start方法) 3.7 rc脚本(stop和status方法) 3.8 rc脚本(以daemon方式启动)

3.6-3.7 rc脚本(start、stop和status方法) #!/usr/bin/env python# -*- coding: utf-8 -*-# [@Version](https://my.oschina.net/u/931210) : python 2.7# [@Time](https://my.oschina.......

隐匿的蚂蚁
今天
3
0
Cnn学习相关博客

CNN卷积神经网络原理讲解+图片识别应用(附源码) 笨方法学习CNN图像识别系列 深度学习图像识别项目(中):Keras和卷积神经网络(CNN) 卷积神经网络模型部署到移动设备 使用CNN神经网络进行...

-九天-
昨天
4
0
flutter 底部输入框 聊天输入框 Flexible

想在页面底部放个输入框,结果键盘一直遮住了,原来是布局问题 Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text("评论"), ...

大灰狼wow
昨天
4
0
Kernel I2C子系统

备注:所有图片来源于网络 1,I2C协议: 物理拓扑: I2C总线由两根信号线组成,一条是时钟信号线SCL,一条是数据信号线SDA。一条I2C总线可以接多个设备,每个设备都接入I2C总线的SCL和SDA。I...

yepanl
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部