标签: http-compression

在Couchdb中压缩(Gzip或Deflate)显示,列表和视图

似乎couchdb在请求时使用正确的标头自动压缩其所有_attachments.但遗憾的是,视图,节目或列表不会发生这种情况.

在将结果返回给客户端之前有没有办法实现压缩?

使用像deflatejs这样的第三方库(还没有测试它)是一种糟糕的方法吗?

谢谢

performance gzip couchdb http-compression deflate

5
推荐指数
1
解决办法
1544
查看次数

具有压缩功能的 Node.JS http 服务器 - 发送变量作为响应

抱歉这个含糊不清的问题......但我不太确定问题是什么。我有一个节点 http 服务器,用于将 JSON 数据提供给 Web 应用程序。它工作得很好,但我的 JSON 字符串开始变大(10-12 MB),所以我想用 zlib 添加压缩。

JSON 数据在一个字符串变量中,我想压缩然后写入响应对象......但返回到客户端的结果似乎总是具有完美的标头,并且没有内容。这是我的 deliveryResponse 函数:

var deliverResult = function (data, response, callback, acceptEncoding){
    var payload = callback + '(' + JSON.stringify(data) + ');';

    if (acceptEncoding.match(/\bdeflate\b/)) {
        response.writeHead(200, { 'Content-Encoding': 'deflate', 'Content-Type': 'text/javascript; charset=UTF-8' });
        zlib.deflate(payload, function(err, result){
            if(!err){
                //console.log(result.toString('utf8')); // I have data on the console here
                response.write(result.toString('utf8')); // No data sent here
           }
        });
    } else if (acceptEncoding.match(/\bgzip\b/)) {
        response.writeHead(200, { 'Content-Encoding': 'gzip', 'Content-Type': 'text/javascript; charset=UTF-8' });
        zlib.gzip(payload, …
Run Code Online (Sandbox Code Playgroud)

javascript zlib http-compression node.js

5
推荐指数
1
解决办法
2930
查看次数

在Apache上启用压缩的正确方法是哪种?

有人说要启用压缩,您可以修改htaccess文件:

其他人说你需要更新httpd.conf文件

正确的方法是什么?如果任何一个都正确,那么htaccess不需要重新启动Web服务器,不是更好的选择吗?

apache gzip http-compression deflate

5
推荐指数
1
解决办法
1148
查看次数

如何创建一个使用 gzip 压缩静态文件的简单节点服务器

我一直在这几个小时..

我做的第一件事是按照教程进行操作,其中包含以下代码:

var express = require('express');
var app = express();

// New call to compress content
app.use(express.compress());    
app.use(express.static(__dirname + '/public'));
app.listen(3333);
Run Code Online (Sandbox Code Playgroud)

自然代码已经过时了..我收到了这个错误:

Error: Most middleware (like compress) is no longer bundled with Express and must be installed separately. Please see https://github.com/senchalabs/connect#middleware.
Run Code Online (Sandbox Code Playgroud)

所以我将代码更新为:

var express = require('express');
var app = express();
var compression = require('compression')

app.use(compression());
app.use(express.static(__dirname + '/_public' ));    

app.listen(3333);
Run Code Online (Sandbox Code Playgroud)

效果很好..但我没有看到压缩的证据(我怎么知道?通过查看 chrome 开发工具响应标头:

在此处输入图片说明

它没有content-encoding教程中的 gzip标头:

在此处输入图片说明

所以尝试改用zlib库:

var express = require('express');
var app     = express(); …
Run Code Online (Sandbox Code Playgroud)

compression gzip http-compression node.js express

5
推荐指数
2
解决办法
4422
查看次数

IE11 GZIP缓慢的AJAX请求

所以这是一个奇怪的问题,我真的在这里寻找一些最佳实践和潜在的解决方案.

背景:

我正在研究一个非常重要的企业应用程序.这是一个单页应用程序,除了初始加载,应用程序中没有完整的页面加载.几乎所有服务事务都返回JSON.

该应用程序生成大型数据集,其中一些可以超过1到2 MB未压缩.这显然是不可取的,但鉴于我们的应用程序的复杂性和它的作用,它也不是我们可以很容易地以实质性方式改变的东西.因此,我们在IIS中为JSON和XML启用了动态压缩,在500K未压缩的JSON包中有效地将我们降低到大约47K.

(让IIS动态压缩JSON和XML本身就是一件苦差事,所以如果有人需要提示,我很乐意帮忙.)

问题状态:

我们很高兴能够缩小我们的数据集,但是我们已经注意到IE11似乎与在AJAX响应对象中返回的压缩数据相比较差.基本上发生的是,当IE解压缩从AJAX请求返回的GZipped数据时,UI层中存在可见的暂停.它并不实质(1.5秒),但它非常引人注目.我们测试的其他浏览器都没有受到此影响; Chrome,Safari,FireFox,Opera ...都会解压缩并处理此压缩数据,而UI中没有任何可见的暂停.所以,这似乎是IE迷人的怪癖之一.

尝试的解决方案:

我们试图通过优化对象大小以及调整压缩级别来减少这种情况.其中,减少起始对象大小是唯一成功减少渲染延迟的因素; 压缩级别似乎很少或根本没有.但正如我所说,我们已经达到了我们可以做的优化数据大小的外部限制.

我需要的:

理想情况下,有人在那里遇到了同样的问题,并且可以提供有关我们如何解决IE11问题的建议.或者,如果有人能够深入了解IE如何处理gZipped响应,以及为什么这种差异可以归结为完全停止浏览器UI中发生的任何事情,我会很高兴.

我远不是一名IIS专家,所以说话慢,用小词;-)

iis ajax asp.net-mvc http-compression internet-explorer-11

5
推荐指数
1
解决办法
1029
查看次数

Springboot gzip 压缩响应的大小小于配置的 min-response-size

我正在尝试在 Springboot Rest API 中实现 Gzip 响应压缩

我在 application.properties 中使用以下配置

# Enable response compression
server.compression.enabled=true

# The comma-separated list of mime types that should be compressed
server.compression.mime-types=text/html,text/xml,text/plain,text/css,text/javascript,application/javascript,application/json

# Compress the response only if the response size is at least 10KB
server.compression.min-response-size=10240
Run Code Online (Sandbox Code Playgroud)

响应压缩正在发生,但奇怪的是它也压缩了大小低至 1KB 或 500B 的响应,它不应该像 server.compression.min-response-size=10240

rest spring gzip http-compression spring-boot

5
推荐指数
1
解决办法
1848
查看次数

我可以在WCF中使用net.TCP和GZip技术吗?

我们可以使用net.TCP绑定在WCF中实现GZip,或者只能使用Http和WsHttp绑定进行配置.

compression wcf gzip http-compression net.tcp

4
推荐指数
2
解决办法
3728
查看次数

缩小 text/html 模板中的 HTML 文件

我使用小胡子/车把模板。

例如:

<script id="contact-detail-template" type="text/html">
    <div>... content to be compressed </div>
</script>
Run Code Online (Sandbox Code Playgroud)

我希望在模板中压缩/缩小我的 HTML 文件以获得最佳压缩效果。

YUIcompressor,关闭不起作用,因为他们认为它是脚本并给我脚本错误。

即使 HTMLCompressor 认为它是一个脚本,它也不会触及它们。

如何使用 text/html 类型缩小脚本标签中的内容?我可以使用图书馆吗?如果没有,sed 或 egrep 是更好的方法吗?您是否有 sed/egrep 语法来删除空行(只有空格或制表符)、删除所有制表符、修剪多余的空格?

谢谢。

sed http-compression yui-compressor mustache handlebars.js

4
推荐指数
1
解决办法
6085
查看次数

Azure Web App不使用GZip压缩

我使用WebPageTest来测试Azure Web App的性能(ASP.Net vNext Web API/Angular).我得到了"压缩传输"和"缓存静态内容"的F.

在搜索StackOverflow和Google之后,我在web.config中添加了以下内容:

<urlCompression doStaticCompression="true" doDynamicCompression="true" />
    <httpCompression>
      <dynamicTypes>
        <clear />
        <remove mimeType="*/*" />
        <add enabled="true" mimeType="text/*"/>
        <add enabled="true" mimeType="message/*"/>
        <add enabled="true" mimeType="application/x-javascript"/>
        <add enabled="true" mimeType="application/javascript"/>
        <add enabled="true" mimeType="application/json"/>
        <add enabled="false" mimeType="*/*"/>
        <add enabled="true" mimeType="application/atom+xml"/>
        <add enabled="true" mimeType="application/atom+xml;charset=utf-8"/>
      </dynamicTypes>
      <staticTypes>
        <clear />
        <remove mimeType="*/*" />
        <add enabled="true" mimeType="text/*"/>
        <add enabled="true" mimeType="message/*"/>
        <add enabled="true" mimeType="application/javascript"/>
        <add enabled="true" mimeType="application/atom+xml"/>
        <add enabled="true" mimeType="application/xaml+xml"/>
        <add enabled="true" mimeType="application/json"/>
        <add enabled="false" mimeType="*/*"/>
      </staticTypes>
    </httpCompression>
Run Code Online (Sandbox Code Playgroud)

<staticContent>
      <!-- Set expire headers to 30 …
Run Code Online (Sandbox Code Playgroud)

gzip http-compression azure http-caching azure-web-sites

4
推荐指数
2
解决办法
6762
查看次数

设置 IIS10 以提供预压缩文件

我的 angular2 项目为我的 web 应用程序构建了预压缩的 gzip 文件,但我的 IIS 只提供普通的“.js”文件而不是压缩的“.gzip”文件。我的浏览器愿意接受 gzip。

IIS 允许 gzip 响应的正确设置是什么?

我已经搜索了 google/SO/SU,但只找到了非“预压缩”内容的解决方案。

iis gzip http-compression angular

4
推荐指数
1
解决办法
2137
查看次数