Hello,
We run a reasonably well tuned Jira Server instance (7.13, around 100k issues). We use Apache reverse proxy. Gzip is disabled both in Jira and in Apache. No caching on the proxy.
Our users are all around the globe, some with latencies around 200 ms to Jira server (and proxy), and the experience for them is not ideal, especially with cold cache in their browsers. Page load times can go as high as 30-40 seconds, spent mainly on loading large CSS and JS files. I came up with an idea of enabling gzip compression on Apache to alleviate the situation.
A second proxy was set up, an exact clone of the production one, and I started testing. Added:
AddOutputFilterByType DEFLATE text/css application/x-javascript text/x-component text/html text/plain text/xml application/javascript
KeepAlive On
to Apache configuration.
Initial testing – awesome, it works! Page load times with cold cache are much faster, files get compressed, and I noticed no adverse effects on Jira functionality.
Further testing – it works, but client browser cache does not get used for compressed files. Without gzip, large CSS and JS were cached by the browser and reused (response code 304), which improved user experience significantly. With compression enabled, files are much smaller, but response codes are always 200, so everything is downloaded repeatedly on every page load.
Overall, enabling gzip compression made things worse, as it removed the benefits of a populated browser cache.
Can anyone offer any tips about gzip compression that plays well with user’s browser cache?