HTTP Compression - why wouldn't you use it?
June 26, 2017
.net Programming
Now that I am firmly implanted in mobile apps development I can assume that data between my app and the server where data resides will be accessed using a limited connection (throttled at certain usage points, pay-as-your-go or otherwise).
The first thing I did was limit all my requests and responses to the bare minimum data needed. In other words, if a piece of data contains a big piece of information (like the body this blog post you're reading) I would grab it ONLY when needed. For example, to list blog posts, I would return only the title and date, for instance. And then I would make another request to fetch the body text only if the user clicks on the post to read it. Sensible, right?
But something still didn't sit right with me. There's got to be more I can do to reduce bandwidth usage, right?
Compression!
Of course, I should compress all data I send over the "wire" to make my minimal conversations eve smaller. But how? It turns out to be quite simple.
Since I'm already using WebAPI and HttpClient, there was surprisingly little to do.
I first checked the server to make sure compression was enabled. Luckily, it is enabled by default so I could check WebAPI off (since the JSON responses it sends would be compressed using the server's settings).
So what about the requests made by the app itself? Unfortunately, compression isn't on by default. Lucky for me it doesn't take much.
Since I make every request via a class I have derived from Microsoft's base HttpClient I merely had to add this to the constructor:
:
base
(
new
HttpClientHandler()
{
AutomaticDecompression = System.Net.DecompressionMethods.GZip | System.Net.DecompressionMethods.Deflate
})
The HttpClientHandler in bold tells the system to accept either of the standard web compression mechanisms and, if used by the server, automatically decompress the response.
Boom!
Using Telerik Fiddler to make sure things are working properly, I pleasantly see that compression is indeed working:
![](data:image/png;base64,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)
Wow - 51.3% compression? And that was on a very small response.
I'm sure my mileage will vary, but it was certainly worth the 20 minutes I spent!
I do wish this were enabled by default in the HttpClient subsystem, but as this article shows, it is quite easy to set up yourself.
Happy coding!