इनमें से शेष उत्तर पुराने हैं और / या कुछ के लिए शीर्ष पर जटिल हैं जो कि सरल होना चाहिए IMO (अब के लिए gzip कितना लंबा हो गया है? जावा की तुलना में लंबे समय तक ...) डॉक्स से:
Application.properties में 1.3+
# 🗜️🗜️🗜️
server.compression.enabled=true
# opt in to content types
server.compression.mime-types=application/json,application/xml,text/html,text/xml,text/plain,application/javascript,text/css
# not worth the CPU cycles at some point, probably
server.compression.min-response-size=10240
ऐप्लिकेशन में। 1.2.2 - <1.3 पर
server.tomcat.compression=on
server.tomcat.compressableMimeTypes=application/json,application/xml,text/html,text/xml,text/plain,application/javascript,text/css
1.2.2 से अधिक पुराना:
@Component
public class TomcatCustomizer implements TomcatConnectorCustomizer {
@Override
public void customize(Connector connector) {
connector.setProperty("compression", "on");
// Add json and xml mime types, as they're not in the mimetype list by default
connector.setProperty("compressableMimeType", "text/html,text/xml,text/plain,application/json,application/xml");
}
}
यह भी ध्यान दें कि यदि आप एम्बेडेड टोमैट चला रहे हैं तो यह केवल काम करेगा:
यदि आप एक गैर-एम्बेडेड टोमसैट पर तैनात करने की योजना बनाते हैं, तो आपको इसे server.xml http://tomcat.apache.org/tomcat-9.0-doc/config/http.html#Standard_mplementation में सक्षम करना होगा।
IRL उत्पादन नोट:
इसके अलावा इस सब से बचने के लिए nginx और / या haproxy के साथ Tomcat के सामने एक प्रॉक्सी / लोड बैलेंसर सेटअप का उपयोग करने पर विचार करें क्योंकि यह स्थैतिक संपत्ति और gzip MUCH को अधिक कुशलता से और आसानी से जावा / Tomcat के थ्रेडिंग मॉडल की तुलना में संभाल लेगा।
आप स्नान में बिल्ली को फेंकना नहीं चाहते हैं क्योंकि यह अनुरोधों की सेवा करने के बजाय सामान को संपीड़ित करने में व्यस्त है (या अधिक संभावना है कि थ्रेड्स खाएं / सीपीयू / हीप के चारों ओर बैठे डेटाबेस IO के इंतजार में बैठे रहें, जबकि आपका AWS बिल जो चल रहा है क्यों पारंपरिक जावा / टॉम्कट एक अच्छा विचार नहीं हो सकता है कि आप जो कर रहे हैं उसके आधार पर शुरू करें लेकिन मैं पचाता हूं ...)
Refs:
https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/html/howto.html#how-to-enable-http-response-compression
https://github.com/spring-projects/spring-boot/issues/2031