0

我有一种情况,
用户需要下载大文本文件 (1-15 MB) CSV 文件
,该文件在使用 Excel 编辑后, 使用 Web 浏览器在同一页面中按原样
(编辑后的 ​​CSV)重新上传到站点。

申请下载的gzip编码
和发送给用户的内容是gzip压缩的(通过firebug看到)

问题是 当用户重新上传编辑过的文件时,
它以非压缩文本的形式传输(是吗?)。 当执行并发上传/下载时,
有限的用户带宽(大约 50-128 KBps 上传)
和相当大的用户群(超过 100 个并发用户)
将迫使站点性能下降(超过一分钟的响应时间) 。

问题: 如何让客户端浏览器 在后台
使用 gzip 内容编码和压缩通过 HTTP Post 发送文件上传?

我们可以在上传前指导用户压缩文件,
但鉴于可以生成各种存档文件格式
并且为用户添加步骤使得采用“存档”不是一个可行的选择,

编辑

并且服务器端的解压处理会给
已经很忙的服务器增加负担。

改写

而各种格式的服务器端解压逻辑
会增加服务器端代码的复杂性。 由于使用压缩减少了传输时间和带宽使用,
解压缩负担本身是可以接受的。

信息

  • 服务器:IIS
  • 使用 ASP.NET MVC 3、
    Visual Studio 2010 C# 4.0、
    DevExpress 12 MVC 扩展、
    UploadControl 组件制作

类似的问题没有得到想要的答案:

压缩从浏览器发送的 HTTP Post 数据

有些人甚至没有回答:

为 post 数据实现 http 压缩

4

1 回答 1

0

并且服务器端的解压处理会给已经很忙的服务器增加负担。

使用 gzip 下载会更糟,通常压缩比解压缩更占用处理器资源。

没有办法神奇地强制 gzip 进行上传,即使您确实管理了它,解压缩也将始终由您说您不想要的服务器完成。

在我看来,您的解决方案根本不再满足您的服务要求。您可能要么不得不忍受它,要么面临某种升级。

于 2013-09-05T11:16:56.087 回答