JCIFS读取远程服务器文件过慢的解决方法
JCIFS读取远程服务器文件过慢的解决方法
var favor_del = "取消收藏";
var favor_ok = "
已成功添加到收藏夹
";
function delete_favor(obi_id, obj_type){
$('#attention_it').html(favor_add);
$("#p_attention_count").load("/action/favorite/cancel?type="+obj_type+"&id="+obi_id, {user: ''});
}
function add_to_favor(obj_id, obj_type){
if(confirm('必须登录后才能收藏,是否现在登录?')){
location.href="http://www.oschina.net/home/login?goto_page="+encodeURIComponent(location.href);
}
}
function close_favor(elem_id){
$('#favor_trigger').poshytip('destroy');
}
function setTag(tv){
var t = $("._favor_input");
var value = t.val();
var tags = value.replace(/,/ig,',').split(',');
var exist = false;
value = $.map(tags,function(v,i){
if($.trim(tv) == $.trim(v)){
exist = true;
return undefined;
}
return v;
}).join(',');
if(exist){
t.val(value);
return;
}
if(value!="")
t.val(value+","+tv);
else
t.val(tv)
}
function ltrim(str){
var whitespace = new String(" \t\n\r");
var s = new String(str);
if (whitespace.indexOf(s.charAt(0)) != -1){
var j=0, i = s.length;
while (j = 0 && whitespace.indexOf(s.charAt(i)) != -1){
i--;
}
s = s.substring(0, i+1);
}
return s;
}
function trim(str){
return rtrim(ltrim(str));
}
// ]]>
0人收藏此文章,
//
我要收藏
//
与windows explorer打开相同的文件相比,JCIFS默认情况下要慢太多了。我找了大半天,总算找出了解决方法,增加如下配置,则读取速度会有质的飞跃,我这边从7s提升至0.2s:
1
|
System.setProperty( "jcifs.smb.client.dfs.disabled" , "true" ); |
至于原因嘛,我也不知道,我是从此网站捞到的一条配置:
http://samba.2283325.n4.nabble.com/Peformance-questions-td4644647.html
执行程序代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
private static final int BUFFER_SIZE = 1024 ; public static void main(String[]args) throws Exception { //SmbFile file = new SmbFile("smb://finchina;daieel:123456@192.168.100.246/Soft/sc8 key.txt"); //SmbFile file = new SmbFile("smb://10.15.97.181/xx部资料库/工作文档/查询逻辑.txt");d //http://samba.2283325.n4.nabble.com/Peformance-questions-td4644647.html System.setProperty( "jcifs.smb.client.dfs.disabled" , "true" ); long startTime = System.currentTimeMillis(); UniAddress dc = UniAddress.getByName( "192.168.100.5" ); NtlmPasswordAuthentication authentication = new NtlmPasswordAuthentication( "fgina" , "xiajl" , "orange" ); SmbSession.logon(dc, authentication); SmbFile file = new SmbFile( "smb://192.168.100.5/edse/users.txt" , authentication); ByteArrayOutputStream out = new ByteArrayOutputStream(); BufferedInputStream in = new BufferedInputStream( new SmbFileInputStream(file)); //SmbFileInputStream in = new SmbFileInputStream(file) ; //建立smb文件输入流 byte buffer[] = new byte [BUFFER_SIZE] ; int count = - 1 ; while ((count = in.read(buffer, 0 ,BUFFER_SIZE)) != - 1 ) { out.write(buffer, 0 , count); } String content = new String(out.toByteArray(), "GBK" ); in.close(); System.out.println(System.currentTimeMillis() - startTime); System.out.println(content); } |
JCIFS读取远程服务器文件过慢的解决方法的更多相关文章
- 在 Sublime Text 2 中使用 SFTP 插件快速编辑远程服务器文件
在 Sublime Text 2 中使用 SFTP 插件快速编辑远程服务器文件 开源程序 浏览:29555 2013年05月02日 文章目录[隐藏] 常见的工作流程 SFTP 安装和使用方法 第一步: ...
- java使用sftp下载远程服务器文件
使用的是springboot的项目,只是贴出主要配置与类,代码较长,可以先折叠: 参考:https://www.cnblogs.com/xyzq/p/7049369.html 操作工具类SftpUti ...
- 本地VSCode编辑远程服务器文件
前言 先说下我的场景:服务器搭设了一系列复杂环境,然后需要使用PHP实现某些功能 选这种远程编辑的原因: 首先PHP打死我也不想装(这个现在是出了VB外最惹人厌的语言了) 然后环境比较复杂,本地装下比 ...
- #在windows上使用ngix重定向目录访问远程服务器文件详细实例
为了在开发环境保持于生产环境相同的访问远程服务器文件资源的目录配置,需要在开发环境(windows)在远程文件服务器使用nignx重定向文件目录,因为网上的资料大都是copy的,解释比较笼统,也没有具 ...
- IIS6.0服务器搭建网站无法访问解决方法
IIS6.0服务器搭建网站无法访问解决方法 IIS6.0服务器搭建网站无法访问解决方法很多朋友在用IIS6架网站的时候遇到不少问题,而这些问题有些在过去的IIS5里面就遇到过,有些是新出来的, ...
- Log4Net 生成多个文件、文件名累加解决方法
Log4Net 生成多个文件.文件名累加解决方法 项目中的WCF服务里采用Log4Net用来记录异常日志,但部署后,生成的日志会出现多个累加文件,如下图: WCF是寄宿在IIS上,包含了5个SVC服务 ...
- EXCEL词典(xllex.dll)文件丢失或损坏解决方法
EXCEL词典(xllex.dll)文件丢失或损坏解决方法 1● 问题 2● 解决 fail 3● 方法2 regsvr32 xllex.dll 4● 方法3 启动server ...
- webstorm无法显示左边文件夹目录的解决方法
webstorm无法显示左边文件夹目录的解决方法 方法一 view-->Tool Windows-->Project 就可以显示或者关闭 方法二 1.删除webstorm的配置文件夹 2. ...
- svn新建文件不能提交的解决方法
svn新建文件不能提交的解决方法 在当前新建文件的目录下,右键空白处: 选择Properties 找到所有有ignore字眼的属性,查看这个属性的继承目录(inherited from),入我的是cl ...
随机推荐
- Ubuntu 14.04安装Chromium浏览器并添加Flash插件Pepper Flash Player
安装方法Ubuntu 14.04及衍生版本用户命令: 因为默认库里面有Chromium和Pepper Flash Player,安装非常容易,打开终端,输入以下命令: sudo apt-get upd ...
- iOS 进阶 第十三天(0414)
0414 画线.圆和圆弧的第二种方法 5中方法画矩形: 第二种画图形的方法: 之前做的方法都是先把要画的元素缓存到图形上下文CGConteextRef中去,现在第二种方法也缓存到CGPath中去.其实 ...
- SQL Server备份事务日志结尾(Tail)
原文:http://blog.csdn.net/tjvictor/article/details/5256906 事务日志结尾经常提交数据库未备份的事务日志内容.基本上,每一次你执行事务日志备份时 ...
- 【转】在RedHat上搭建自己Email服务器
原文:http://6839976.blog.51cto.com/6829976/1323482 by LN__@linux 目前邮件服务器中,想要拥有自己的邮件服务器,单单使用senmail,pos ...
- 2436: [Noi2011]Noi嘉年华 - BZOJ
Description NOI2011 在吉林大学开始啦!为了迎接来自全国各地最优秀的信息学选手,吉林大学决定举办两场盛大的 NOI 嘉年华活动,分在两个不同的地点举办.每个嘉年华可能包含很多个活动, ...
- 2064: 分裂 - BZOJ
Description 背景: 和久必分,分久必和... 题目描述: 中国历史上上分分和和次数非常多..通读中国历史的WJMZBMR表示毫无压力. 同时经常搞OI的他把这个变成了一个数学模型. 假设中 ...
- java多线程状态转换
http://www.mamicode.com/info-detail-517008.html 相关资料链接 我觉得下面这张图总结的很好
- SQL SERVER字符串函数
本篇文章还是学习<程序员的SQL金典>内容的记录,此次将讲解的是SQL SERVER的字符串函数. 其实数据库跟程序语言库一样,都会集成很多可以使用的API.这些API,如果你熟悉的话,将 ...
- div均匀分布代码实例
多个div在同一行以相同间隔分布: 这样的布局效果使用非常的频繁,也就是让多个div在一行分布,并且div于div之间的间隙是一样的,多用在对于产品的展示之用,下面就介绍一下如何实现此中布局,代码实例 ...
- java递归查询方法
一.需求 项目里要让用户能够设置所选择教材的章课节,以针对章课节提供相应的题目供用户做题. 设计:用户设置了教材后,首次登录,进行章节设置时.默认为用户选择第一章.第一课.第一节. 思路:用户访问页面 ...