2009-07-10 88 views

回答

2

大约4年前,我们在基于C++的web服务器中使用了gSOAP。总的来说,它运行良好唯一的主要问题是界面是用C语言和程序(我知道很难设计一个好的非程序界面)。在实现接口时可能会有很多重复的代码,为此您可能必须使用宏(我们没有深入探索模板选项)。

1

我们使用gSoap将Web服务部署到运行ARM MX处理器的嵌入式Linux设备上。

1

我们使用gSOAP从运行在ARM处理器上的Linux设备上部署的应用程序中使用基于WCF的Web服务。这个经验在很大程度上是很好的。

3

我们使用gSOAP为一堆ARM客户端与AXIS Web服务服务器进行通信。 gSOAP的的优点:

  • 非常强大,支持几乎所有的Web服务构建
  • 易于使用,它的WS的抽象调入功能删除所有Web服务的复杂性给程序员在C和
  • 优雅的界面

    • 使用时:C++

    然而,我们遇到了一些发展瓶颈自定义数据类型如地图或集合,需要相当一些黑客才能让gSOAP编译器处理它们(编组/解组)。对动态数据结构尤其不利。

  • 由于其内在的复杂网络,解析和内存分配部件,调试很难。尽一切可能坚持静态内存分配。
  • 邮件列表还活着,但开发人员并不是很活跃。简单的问题可以很快得到解答,但最棘手的问题往往无法解决优化问题。 gSOAP链接在运行时消耗约1MB内存(-Os)。我们的32MB基于ARM的ARM板上的运行时性能很好,但如果需要的话,对于优化确实没什么作用。
0

我们在ARM ARM9 400MHz设备上的web服务器上使用了gSOAP。 gSOAP守护进程通过zeromq库连接到数据库守护进程,该库在同一设备上运行。

它支持超过1000个基本请求,但不要求连接数据库。

通过WITH_NOIDREF定义禁用对多引用SOAP选项的支持有助于在具有大量序列化节点的大型请求中将序列化时间缩短约4倍。