远程访问SQL服务器储存PDF文件的解决方案
求一个远程访问SQL服务器储存PDF文件的解决方案!
C/S程序,用来储存分公司员工提交的PDF报告文件。
为了以后查询资料方便,我使用SQL数据库储存文件。
PDF文件大概在2-8M左右,为了在上传过程中可以提供一个准确的进度指示,也为了在上传过程中程序不至于完全卡死,我先把pdf文件分割成若干等份,然后再依次上传。 下载时依次下载,再合并成为完整的文件。
储存PDF的表reports,结构如下:
编号 PK,bigint
索引 int
文件名 nchar(100)
内容 image
上传人 nchar(30)
比如: 1.PDF分割成5份,上传完后表里是这样子:
编号 索引 文件名 内容 上传人
1 0 1.PDF <2进制数据> A
2 1 1.PDF <2进制数据> A
3 2 1.PDF <2进制数据> A
4 3 1.PDF <2进制数据> A
5 4 1.PDF <2进制数据> A
服务器是普通的电脑(Intel Pentium Dual E2180 2G, 1.5G内存),普通2M ADSL上网
现在上传时很慢,大家使用起来很“卡”,说还不如用QQ传来得方便 =。=||
我该从哪下手进行优化呢? 或者我就不应该采用这种方式储存?
请大家指教! 我现在只能发100分的贴,得到好的解决方案再加100分。谢谢。
------解决方案--------------------
通过web services
http://www.cnblogs.com/wudingfeng/archive/2008/09/08/1286557.html
------解决方案--------------------
不如把PDF文件存在硬盘上,数据库中只保存PDF文件路径
------解决方案--------------------
普通2M ADSL上网 //瓶颈在这里
应为ADSL是不对称的,上/下传速率比一般为1:8,所以当客户端下载的时候,服务端就是上传,那么整个服务器上传带宽才几十K,速度当然不行了!
------解决方案--------------------
其实我的建议也是跟2楼朋友一样,数据库只储存PDF路径,PDF文件直接上传的服务器的特定文件夹!
上传到服务器很简单的,写一个UDP通信,开个端口,然后只接用数据流传输,很快的!
C/S程序,用来储存分公司员工提交的PDF报告文件。
为了以后查询资料方便,我使用SQL数据库储存文件。
PDF文件大概在2-8M左右,为了在上传过程中可以提供一个准确的进度指示,也为了在上传过程中程序不至于完全卡死,我先把pdf文件分割成若干等份,然后再依次上传。 下载时依次下载,再合并成为完整的文件。
储存PDF的表reports,结构如下:
编号 PK,bigint
索引 int
文件名 nchar(100)
内容 image
上传人 nchar(30)
比如: 1.PDF分割成5份,上传完后表里是这样子:
编号 索引 文件名 内容 上传人
1 0 1.PDF <2进制数据> A
2 1 1.PDF <2进制数据> A
3 2 1.PDF <2进制数据> A
4 3 1.PDF <2进制数据> A
5 4 1.PDF <2进制数据> A
服务器是普通的电脑(Intel Pentium Dual E2180 2G, 1.5G内存),普通2M ADSL上网
现在上传时很慢,大家使用起来很“卡”,说还不如用QQ传来得方便 =。=||
我该从哪下手进行优化呢? 或者我就不应该采用这种方式储存?
请大家指教! 我现在只能发100分的贴,得到好的解决方案再加100分。谢谢。
------解决方案--------------------
通过web services
http://www.cnblogs.com/wudingfeng/archive/2008/09/08/1286557.html
------解决方案--------------------
不如把PDF文件存在硬盘上,数据库中只保存PDF文件路径
------解决方案--------------------
普通2M ADSL上网 //瓶颈在这里
应为ADSL是不对称的,上/下传速率比一般为1:8,所以当客户端下载的时候,服务端就是上传,那么整个服务器上传带宽才几十K,速度当然不行了!
------解决方案--------------------
其实我的建议也是跟2楼朋友一样,数据库只储存PDF路径,PDF文件直接上传的服务器的特定文件夹!
上传到服务器很简单的,写一个UDP通信,开个端口,然后只接用数据流传输,很快的!