citn
citn

Reputation: 1560

Where have you used gSOAP?

Can you give examples how you used gSOAP and how well it was integrated in your existing architecture? Have you found development bottlenecks with gSOAP?

Upvotes: 3

Views: 1159

Answers (5)

shinberg
shinberg

Reputation: 11

We used gSOAP in a web server on ARM ARM9 400MHz device. gSOAP daemon connected to a database daemon through zeromq library, which is run on the same device.

It supports more than 1000 basic requests wich does not requre connection to database.

Disabling support for multi-referenced SOAP option by the WITH_NOIDREF define helped to decrease serialization time about 4 times faster on big requests with large number of serialization nodes.

Upvotes: 0

michelem
michelem

Reputation: 86

We used gSOAP for a bunch of ARM clients to communicate with an AXIS Web Service server. Pros of gSOAP:

  • very powerful, supports nearly all Web Service constructs
  • easy to use, its abstraction of WS calls into functions removes all Web Service complexity to the programmer
  • elegant interfaces in both C and C++

However, we ran into several development bottlenecks:

  • when using custom datatypes like maps or sets, it takes quite some hacking to get the gSOAP compiler to handle them (marshal/unmarshalling). Especially bad with dynamic data structures.
  • debugging is hard because of its intrinsic complex network, parsing and memory allocation parts. Do everything possible to stick with static memory allocation.
  • the mailing list is alive, but developers are not very active on it. Simple questions can get answered quickly, but the toughest problems often go unanswered
  • forget about optimization. Linking in gSOAP eats about 1MB of memory at runtime (-Os). Runtime performance is fine on our 32MB linux-based ARM board, but there really is little to do about optimization if you need it.

Upvotes: 4

Kangkan
Kangkan

Reputation: 15571

We are using gSOAP to consume a WCF based webservice from an application deployed on a linux device running on ARM processor. The experience is good to a large extent.

Upvotes: 1

Miguel Ping
Miguel Ping

Reputation: 18347

We are using gSoap to deploy a web service onto an embedde linux device running an ARM MX processor.

Upvotes: 1

amit kumar
amit kumar

Reputation: 21022

We used gSOAP in a C++-based web server about 4 years back. Overall it worked fine. The only major issue was that the interface was in C and procedural (I understand it is difficult to design a good non-procedural interface). There may be a lot of repeated code while implementing the interface, for which you might have to use macros (we didn't explore the templates option too far then).

Upvotes: 2

Related Questions