【发布时间】:2013-09-09 04:37:04
【问题描述】:
我有一种情况
用户需要下载大文本文件 (1-15 MB) CSV 文件
使用 Excel 编辑后,
按原样重新上传(编辑后的 CSV)
在同一页面中使用网络浏览器访问网站。
申请下载的gzip编码
并且发送给用户的内容是 gzip 压缩的(通过 firebug 看到)
问题是
当用户重新上传编辑过的文件时,
它以非压缩文本的形式传输(是吗?)。
有限的用户带宽(大约 50-128 KBps 上传)
和相当大的用户群(超过 100 个并发用户)
将迫使网站性能下降(超过一分钟的响应时间)
执行并发上传/下载时。
问题:
如何制作客户端浏览器
通过 HTTP Post 发送文件上传
使用 gzip 内容编码和压缩
在幕后?
我们可以在上传前指示用户压缩文件,
但考虑到可以生成各种存档文件格式的情况
并且为用户添加步骤使得采用“归档”不是一个可行的选择,
编辑
和服务器端的解压处理会增加负担
到已经很忙的服务器。
改写
各种格式的服务器端解压逻辑
将增加服务器端代码的复杂性。
减压负担本身是可以接受的
使用压缩减少了传输时间和带宽使用量。
信息
- 服务器:IIS
- 使用 ASP.NET MVC 3 制作,
Visual Studio 2010 C# 4.0,
DevExpress 12 MVC 扩展,
上传控件组件
类似的问题没有得到想要的答案:
Compressing HTTP Post Data sent from browser
有些人甚至没有回答:
【问题讨论】:
标签: c# asp.net http-post content-encoding