c++ - 选择一个远程过程调用 C++ 库

标签 c++ protocols rpc asn.1

我必须以标准方式重写旧的“专有”客户端-服务器协议(protocol)。
我正在寻找一种抽象符号来定义协议(protocol)和跨平台实现库。

我很想使用 ASN.1,因为它是一个定义明确的标准,但它似乎缺乏免费实现,尽管有一些非常好的商业工具,如 Oss Nokava 和 Objective-System

现在我找到了免费的 NCBI C++ Toolk这看起来很有趣,因为它有一个 ASN.1“类生成器”及其实现。

我找到的其他解决方案是:

  • Thrift
  • 消息包
  • Protocol Buffer

Here我找到了一个对照表。
这些都有利有弊,所以我在这里问一下是否有人有经验并可以给我一些建议。

问候,丹妮尔。

最佳答案

您使用 ASN.1 的“诱惑”很好。除了您提到的商业工具之外,还有一些免费的 ASN.1 工具。商业工具附带的技术支持的好处通常是物有所值的。但是,可从以下 URL 获得可用 ASN.1 工具的优秀列表(一些免费,一些商业):http://www.itu.int/ITU-T/asn1/links/index.htm

请注意,OSS Nokalva 的 ASN.1 工具包括套接字内存管理器和客户端/服务器示例,它们可能对您的开发有帮助。您可以从 http://www.oss.com/asn1/products/asn1-download.html 下载免费试用版

关于c++ - 选择一个远程过程调用 C++ 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11047401/

相关文章:

arrays - 将符合多个协议(protocol)的类型转换为单个协议(protocol)

c++ - Windows 服务的实时进度

编程竞赛的 C++ 阅读输入

c++ - 通用 C++14 lambda 和与模板的关系

protocols - 协议(protocol)定义语言

linux - TCP 奇怪的 RST 数据包终止连接

c++ - 如何在 Linux 应用程序上使用 C++ 中的终端输入中断循环/进程

调用构造函数时 C++/Qt 无法解析外部

被 rpcgen 示例代码搞糊涂了

python - 我如何针对 python HTTPConnection 进行 read()/write() 操作?