我现在需要做一个功能就是上传到单独一台服务器.假如我项目部署在A服务器,上传的附件想存放在B服务器,不知道各位有没有什么好的意见,谢谢
------解决方案--------------------
用ftp吧
------解决方案--------------------
貌似ftp可以
------解决方案--------------------
ftp 性能不是很好,因为每次都是遍历整个配置的文件夹目录,如果A上面很多需要同步的文件,那么同步效率和性能会很低下。。
------解决方案--------------------
映射一个网盘?跟本地硬盘一样的用,性能吗,没试过
------解决方案--------------------
先上传文件到服务器A,然后同步到服务器B。
------解决方案--------------------
用ftp最简单了
------解决方案--------------------
如果你想简单点实现就用现成的控件产品。一般文件上传控件都提供了上传地址的接口,这样上传控件就直接可以将文件上传到你指定的服务器。
------解决方案--------------------
楼主试试这个控件:http://www.cnblogs.com/xproer/archive/2010/10/24/1859895.html
此控件是基于标准HTTP协议实现的文件上传功能。优势是扩展性非常好,整合简单,支持批量上传文件和上传文件夹功能,上传前获取本地文件大小,适合各种简单WEB项目。
另外一个特点是支持自动上传指定的本地文件。
单文件上传演示
上传本地文件代码
使用步骤如下:
1.调用AddFile函数添加本地文件,注意路径需要使用双斜框(\\)
2.调用PostFirst函数开始上传文件。
<script type="text/javascript" language="javascript">
var fileMgr = new HttpUploaderMgr();
fileMgr.Load();//加载控件
window.onload = function()
{
fileMgr.Init();//初始化控件
//添加一个本地文件
fileMgr.AddFile("D:\\Soft\\QQ2010.exe");
fileMgr.PostFirst();
};
</script>
单文件整合代码:
服务器返回消息:<input id="txtFilePath" type="text" size="50" />
<script type="text/javascript" language="javascript">
var fileMgr = new HttpUploaderSingleMgr();
fileMgr.Config["PostUrl"] = "http://localhost:8080/asp.net/upload.aspx";//指定文件上传地址,可以在这里设置文件服务器地址
fileMgr.Load();
//文件上传完成后执行的回调函数
fileMgr.CompleteHook = function(msg)
{
document.getElementById("txtFilePath").value = msg;
};
window.onload = function()
{
fileMgr.Init();
};
</script>
------解决方案--------------------
不错,有了这个接口可以轻松实现文件分布式存储了。服务端可以减少一个文件转储的处理,用户可以直接将文件存到指定的文件服务器。特别是在分布式存储系统中大有用处。