fastdfs-client-java
fastdfs-client-java copied to clipboard
访问fastDFS集群时总是group1和group2轮流访问
假设现在有group1和group2两个组,然后有个文件是在group2里面保存的。但是在用storageClient.delete_file(groupName,remote_filename)方法去删除文件的时候,虽然已经指定了groupName为group2,但是首次执行时仍会去访问group1,因为找不到文件就返回了22错误码。然后再执行一次时,才会去访问group2。 然后再执行一次,又会去访问group1了。 就很奇怪为什么明明已经指定了group,但是在执行的时候还是会来回的变换group访问,这是bug吗? 而如果用linux安装时带的fdfs_delete_file 功能去操作时就不会有这个问题。
用这种方式不行吗?
其中fs_id是group1/M00/00/4F/CggCLlqQy5KEcHehAAAAAIMEQIs083.zip
public static boolean deleteFile(String fs_id) throws MyException {
if (isEmpty(fs_id)) {
throw new MyException("删除文件fs_id不能为空!");
}
StorageClient1 client1 = new StorageClient1();
try {
int code = client1.delete_file1(fs_id);
if (code == 0) {
log.info("delete file success : " + fs_id);
return true;
}
log.info("delete file fail : " + fs_id + " error code : " + code);
} catch (IOException e) {
log.error(e.getMessage(),e);
} catch (MyException e) {
log.error(e.getMessage(),e);
}
throw new MyException("删除文件失败........");
}
是不是你的remote_filename参数有问题
吐血推荐使用服务端负载均衡和高可用方案