How often does the letter u occur in:
Q: Are there performance impacts to using gzip for web services? I have a very typical scenario:
browser -> web server -> web service
Ive seen lots of articles/documentation about the benefit of compressing the data sent from the web server to the browser to save bandwidth, but Im wondering if there are similar benefits to compressing the data between the web service and the web server?
XML should compress very small, so of course wed get the same benefits in terms of bandwidth, but Im specifically wondering if that will be offset by the processing power needed on the web server, to decrypt the SOAP messages that it receives.
Has anyone enabled gzip for web services, and has there been any performance improvement?
For that matter, will web service clients even understand gzip in the first place?  Or would enabling encryption be a waste of time, that would never never be taken advantage of by the web service client?

A: The question comes down to what does your server have to spare -- CPU or bandwidth? If youre constantly waiting for the network but your CPU is idle, then you probably should be looking into compression. If your CPU is busy but youre not sending much data, then compression probably isnt for you.
XML is a very verbose (and more importantly, repetitive) language, so compression will probably make a decent difference in the amount of data transmitted.
Compression is only useful if both sides support it, otherwise flipping the switch will do nothing. Advertising that you support compression makes very little difference if compression isnt ever actually used.
Finally, its not necessarily all-or-nothing if youre the one transmitting. Gzip compression (LZ77) is tunable to optimize for speed, size, or something in between. How that tuning is done depends on your implementation, but only the side SENDING the data gets to decide. Decompressing gziped data that is highly compressed takes no more resources than decompressing data that was only lightly compressed, so the recipient shouldnt care anyway.

A: As you have stated, server sends headers as the content is zipped, and browser decrypts it.
If you want to do it between your web server and web service, since your service is NOT a browser, youd read headers yourself (or assume everything iz gzipped) and youd use gzipdecode before you send the request to SOAP handler.
Unless you do not transmit a lot of data back and forth (which is worth to compress) I dont see any benefit coming out of it. Even when beneficial compression wise, if you dont have enough CPU and RAM to support it, it can be fatal.
Hope it helps,
D

A: Seeing as how gZip is handled by the users browser, the web client on the other end will need to be able to understand how to decompress gzip. You will be able to tell this by looking in the headers. IIRC its the accept header, and youre looking for gzip and deflate.
The encoding/decoding overhead for gzip is fairly nominal, however it is there. Its useful in browsers because the are not particularly timely - the user will just sit there getting irritated till the page has loaded. A web service is a bit different, they usually have to be pretty fast or else the whole application often appears to have hung.
The only time I would suggest gzip would be useful in a web service would be if its a trivial service that is going to be hammered thousands of times a day, where the savings from 10kb to 2kb of XML would be worth the processing overheads. And thats assuming that the web service on the other end can accept gzip in the first place.

A: BTW, remember that gzipping binary data CAN result in MORE information not less.  So in any event, youd have to be aware of the type of data being gzipped.

user
The text includes eighty-four "u"s in total.
assistant