I get the feeling that I'm missing some simple, yet vital, part of the Web Services / SOAP implementation. Essentially, I'm trying to understand why an app container (like Tomcat) is a Good Thing for a SOAP based web service. What is it that the container provides that's so useful? As I'm writing my own small web services to learn more about the protocol, I've been writing them as simple CGI applications.

I guess, my (possibly skewed) perspective is that a web container adds another level of indirection, and since most of them seem to be written in Java, doesn't that slow things down more? I've been writing my programs in C++, but I understand that to do more complex programs I don't want to be parsing the XML myself, and that's where an outside SOAP library comes in handy, but even Axis C++ seems to need the Java interface.

So, to summarize, I'm trying to find the answers for these questions:
1.1) What is the rationale behind deploying SOAP-based services in an app container?
1.2) What does the container provide?


2.1) How does the performance of a container compare with "raw" CGI?
2.2) How would the performance compare to a CGI interface to an already running program that handles the requests (i.e. something that doesn't have to start and stop; the CGI program parses the SOAP and sends the request in some local inter-app communication format, and then bundles up the result and sends it back)? ... maybe that's what the app container is doing?


Thanks,

Mark

Reply via email to