gtxyzz

淘宝分布式文件系统TFS安装配置手册:JAVA Client实战

gtxyzz 运维技术 2022-11-21 462浏览 0

TFS Java客户端的说明

tfs-client-java版本选择:


tfs-client-java的版本有: release-2.0.0/ tfs-with-large-2.1.1/ tfs-client-java-2.1.3/ release-2.2.2/ release-2.2.3/ release-2.2.4/ release-2.2.6/ 最终我选用了tfs-client-java-2.1.3/ 版本,因为最高的2.2.x版本,工作时必需要与rcserver通信。 我目前不需要rcserver所有没有安装rcserver,所以使用2.1.3版本。

检出:


svn checkout http://code.taobao.org/svn/tfs-client-java/tags/release-2.2.6/ svn checkout http://code.taobao.org/svn/tfs-client-java/tfs-client-java-2.1.3/

导入、编译略。

依赖包说明


common-tair.jar 下载地址:http://code.taobao.org/p/tair-client-java/wiki/index/ 可以下载编译好的 tair-client-2.3.1.jar ,也可以下载源码自己编译。

common-monitor.jar tfs-client-java2.1.3不需要common-monitor.jar包,但2.2.x以后需要common-monitor.jar。

TMD,真的没找到这个common-monitor.jar包。分析tfs-client-java2.2.x源码,只有一处记日志的地方需要使用它的,注释这段代码。

tfs-client-java源码中还有一处: String tfsFileName ….. if (tfsFileName != null && !tfsFileName.isEmpty()) 找不到isEmpty()方法,修改一下,就OK了. 使用tfs-client-java 访问TFS集群


TFS 2.2.10 , 1台NameServer,4台DataServer,每台4块SAS数据盘, 30并发以上写入文件时(10并发时也有少量报错),有较多的报错。压力越大,报错的次数越多。

DataServer上的日志内容大体如下,我只记了error级别的日志。

[2012-11-29 18:14:44] ERROR check_block_version (index_handle.cpp:360) [1113774400] remote version is larger, set block version. blockid: 5367, remote version: 674, local version: 673 [2012-11-29 18:14:44] ERROR check_block_version (index_handle.cpp:360) [1176713536] remote version is larger, set block version. blockid: 3796, remote version: 706, local version: 705 [2012-11-29 18:14:44] ERROR check_block_version (index_handle.cpp:360) [1176713536] remote version is larger, set block version. blockid: 4651, remote version: 675, local version: 674 [2012-11-29 18:14:44] ERROR check_block_version (index_handle.cpp:360) [1155733824] remote version is larger, set block version. blockid: 5153, remote version: 634, local version: 633

后来重新部署了TFS 2.0.4,不再报上面的错误了,情况有所好转。但报了其它错误数量不多。

压力测试:


已形成测试报告,略。

继续浏览有关 分布式 的文章
发表评论