在 Apache Tomcat servlet 容器中运行的 Java Web 应用程序中,它前面有一个 Apache httpd:
在丢包、ping 延迟等方面,应用程序用于或多或少可靠的网络(比公共互联网好,但比 LAN 差一点)。该应用程序大量使用大型 dHTML、AJAX、静态和动态内容。长时间的用户会话(小时)。
我想将 IIS7 中的 HTTP GZIP 压缩级别从 0 更改为 4,如这些文章中所述:
但是,我在它们(或http://www.iis.net/ConfigReference/system.webServer/httpCompression)中看不到任何关于如何将压缩级别从 0 更改为 10 的参考。
IIS 中的压缩页面只有勾选框来启用/禁用动态和静态压缩。
我的Web.config文件有一行:
请你能告诉我我该怎么做吗?
我想知道是否有一个通用的经验法则来启用 PDF 文件的 gzip 压缩。我使用 NGINX,但我认为这对 Apache 用户也有帮助。
谢谢。
我有 2 个需要合并为一个的 gz 文件——也就是说,我想将两个 .gz 文件合并为一个,这样当我提取合并的文件时,我会得到一个包含原始输入文件串联的文件。
time join <(zcat r_TR2_2012-05-28-08-10-00.gz) <(zcat r_TR1_2012-05-28-08-10-00.gz)
Run Code Online (Sandbox Code Playgroud)
上面的语句没有按预期工作。我正在使用 3 个命令来完成所需的工作。
gunzip r_TR2_2012-05-28-08-10-00.gz
gunzip r_TR1_2012-05-28-08-10-00.gz
tar -zcvf combined.tar.gz r_TR1_2012-05-28-08-10-00 r_TR2_2012-05-28-08-10-00
Run Code Online (Sandbox Code Playgroud)
然后在提取文件时将文件连接在一起以生成我想要的输出。
有没有办法在 1 条语句中做到这一点?
我有一个备份脚本:
这是核心脚本:
nice -n 15 tar -czvf $BKP $PATH_BKP/*.* \
| xargs -I '{}' sh -c "test -f '{}' && md5sum '{}'" \
| tee $MD5
scp -l 80000 $BKP $SCP_BKP
scp $MD5 $SCP_BKP
Run Code Online (Sandbox Code Playgroud)
该例程在 gzip 例程中获得了 90% 的 CPU,从而降低了生产服务器的速度。我试图添加一个nice -n 15但服务器仍然挂起。
我已经阅读了1,但谈话对我没有帮助。
解决此问题的最佳方法是什么?我对新的架构/解决方案持开放态度:)
在我的 nginx.conf 中,我有:
gzip on;
gzip_static on;
gzip_buffers 16 8k;
gzip_comp_level 9;
gzip_http_version 1.0;
gzip_min_length 1000;
gzip_types text/plain text/css image/x-icon image/bmp image/png image/gif image/jpeg image/jpg application/json application/x-javascript text/javascript;
gzip_vary on;
gzip_proxied any;
Run Code Online (Sandbox Code Playgroud)
所以,如果我在我的服务器上获取图片的标题:
spiroo@glamdring:~$ curl -I http://static.mysite.com/g/pics/big_6e1855d844ebca560379139e75942f669655f.jpeg
HTTP/1.1 200 OK
Server: nginx
Date: Thu, 04 Apr 2013 13:00:20 GMT
Content-Type: image/jpeg
Content-Length: 5336
Last-Modified: Mon, 25 Mar 2013 13:28:02 GMT
Expires: Fri, 04 Apr 2014 13:00:20 GMT
Cache-Control: max-age=31536000
Pragma: public
Cache-Control: public, must-revalidate, proxy-revalidate
Accept-Ranges: bytes
Run Code Online (Sandbox Code Playgroud)
但是如果我在 nginx.conf 中关闭 …
在运行 Fiddler 时,我注意到向我的服务器请求静态 ~5MB XML 文件时出现了一些奇怪的情况:尽管发送了逐字节相同的标头(编辑:包括标头),但响应不同:
响应 A:
1. 700KB 的 gzip 内容
2. 包含 Content-Length 标头
3. 排除 Transfer-Encoding 标头
响应 B:
1. 1000KB 的 gzip 内容
2. 排除 Content-Length 标头
3. 包含的 Transfer-Encoding 标头:分块标头
我该怎么做才能始终收到响应 A 中所示的更节省带宽的行为?
原始请求:
GET http://[REDACTED]/[REDACTED]/[REDACTED]/[REDACTED].xml?dt=Test1 HTTP/1.1
Host: [REDACTED]
Connection: keep-alive
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Run Code Online (Sandbox Code Playgroud)
原始响应 A:
HTTP/1.1 200 OK
Content-Type: text/xml
Content-Encoding: gzip
Last-Modified: Tue, 07 May …Run Code Online (Sandbox Code Playgroud) 我对web.config运行 IIS 7.5 的服务器进行了一些更改,以提高性能(主要是前端)。
第三方测试工具说该站点运行的是“PHP/5.3.10, ASP.NET”,如果没记错的话,它是 ASP.NET 4.5
我认为这是由于奇怪的技术组合(例如在 IIS 上运行 PHP),但接触任何东西都会让我感到紧张。
我从H5BP IIS 服务器配置中添加了(仅)过期标头和 gzip 的指令
我想我在 2013 年 1 月 15 日下午添加了这些指令。 Pingdom 性能测试工具中的站点测试历史记录可在此处获得。
您可以看到传输大小急剧下降的地方(单击历史记录选项卡)。
从那时起,似乎每次我测试它时,不同的文件(通常是 CSS 和 JS 之类的资产)都或不与 gzip 一起提供,没有押韵或原因。有时似乎所有东西都用 gzip 提供,有时似乎几乎没有任何东西被压缩,但它通常在中间的某个地方(正如你在历史中看到的那样)。
到底是怎么回事?
我该如何解决?
这个网站没有在积极开发中,虽然在 15 日之后页面中添加了一些额外的数据(我添加了 Google Analytics 插件脚本以改进跟踪),但没有什么可以解释如此大的变化和不一致。
我最好的猜测是它与用于压缩的 CPU 资源有关,这个问题似乎很接近:为什么 gzip 压缩在 IIS 中的效率不同?
如何配置 dovecot 来压缩/存档旧电子邮件(例如 6 个月前的电子邮件),同时用户仍然能够阅读它们,以节省服务器上的一些宝贵空间?
使用 gzip 1.3.12 / ubuntu 64bit 我得到“设备上没有剩余空间”但似乎还有足够的磁盘空间。
gunzip 03-05-2012--22-52-01.tar.gz
gzip: 03-05-2012--22-52-01.tar: No space left on device
Run Code Online (Sandbox Code Playgroud)
如果您连续两次运行上述 gunzip,第一次在显示错误之前需要一段时间,第二次它会立即发生。
另一方面,如果我使用tar它可以在给出错误之前从一定数量的文件开始。出现错误后,我可以看到磁盘上的一些文件。
tar -zxvf 03-05-2012--22-52-01.tar.gz
<snip>
tar: root/backups/project_x/03-05-2012--22-52-01/data/contentstore/2012/3/29/10/11: Cannot mkdir: No space left on device
tar: Exiting with failure status due to previous errors
Run Code Online (Sandbox Code Playgroud)
磁盘空间:
sudo du -sh /* | sort -gr | head -n 5
752M /usr
424M /var
160K /run
78M /lib
48K /tmp
df -i -h
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/xvda1 640K 75K 566K 12% …Run Code Online (Sandbox Code Playgroud)