• 【TOMCAT】Tomcat gzip压缩传输数据


    概述

    由于我们项目的三维模型文件非常大,为了提高传输速度,在服务端对其做zip压缩处理非常有必要,能够极大的提高传输速度。

    配置

    首先需要修改web.xml中请求的数据文件的mime类型的mapping映射关系配置,例如为后缀名为s3m的二进制数据文件添加映射关系:

    <mime-mapping>
            <extension>s3m</extension>
            <mime-type>application/octet-stream</mime-type>
    </mime-mapping>

    即.s3m文件对应的mime类型为application/octet-stream。然后编辑tomcat的配置文件server.xml的Connector 元素(HTTP Connector 元素是对http/1.1协议支持的一个连接组件)

    <Connector port="8090"
                   protocol="HTTP/1.1"              
                   connectionTimeout="20000"
                   redirectPort="8453"
                   executor="tomcatThreadPool"
                   enableLookups="false" 
                   URIEncoding="utf-8"
                   compression="on"
                   compressionMinSize="2048"
                   useSendfile = "false"
                   compressableMimeType="application/octet-stream"
                   />

    其中compression=”on”设置开启压缩,

    compressionMinSize=”2048”设置压缩数据的最小值,即数据的字节数必须达到2048个才启用压缩,

    compressableMimeType="application/octet-stream"

    设置为对应mime类型文件的数据进行压缩,正如前面我们在webxml中配置的映射,

    此外,tomcat默认设置是当数据大小达到48kb时,将启用文件传输(sendfile),所以我们想要压缩超过48kb的数据时必须将useSendfile设置为false,具体看官方文档解释。

    配置好以上信息后重启tomcat,看看iserver中发布数据的效果。

     

    可以看到原文件为117k,压缩后变为66k,而浏览器可对数据进行相应格式的解压缩。

  • 相关阅读:
    Linux I/O状态实时监控iostat
    Linux系统常用监控系统状态信息命令
    Linux查看网络信息命令
    Linux服务器进程信息查看命令
    Linux服务器的日志管理
    Linux令普通用户拥有root权限
    linux后台运行之&和nohup区别,模拟后台守护进程
    Linux之shell终端使用操作快捷键
    linux解压缩命令之unzip,tar(持续更新)
    Centos7 安装部署redis及其入门使用
  • 原文地址:https://www.cnblogs.com/baicj/p/5064208.html
Copyright © 2020-2023  润新知