免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 11184 | 回复: 6
打印 上一主题 下一主题

[FastDFS] FastDFS生成文件名问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-01-26 11:14 |只看该作者 |倒序浏览
可以问一下这个文件名的生成方式吗?
是根据原文件名hash得出的?
重复的几率大不大?如果生成的文件名重复了是否就存储失败呢?

还有就是在大批量操作小文件时经常出现如下异常:

似乎是socket没有及时释放?有人遇到过这个问题吗?
java.net.SocketException: No buffer space available (maximum connections reached?): connect
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
        at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
        at java.net.Socket.connect(Socket.java:529)
        at org.csource.fastdfs.ClientGlobal.getSocket(ClientGlobal.java:107)
        at org.csource.fastdfs.StorageServer.<init>(StorageServer.java:33)
        at org.csource.fastdfs.TrackerClient.getUpdateStorage(TrackerClient.java:352)
        at org.csource.fastdfs.StorageClient.newUpdatableStorageConnection(StorageClient.java:1059)
        at org.csource.fastdfs.StorageClient.delete_file(StorageClient.java:55
        at org.csource.fastdfs.StorageClient1.delete_file1(StorageClient1.java:295)

我用的是java客户端;
谢谢

论坛徽章:
4
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:11IT运维版块每日发帖之星
日期:2016-08-11 06:20:00IT运维版块每日发帖之星
日期:2016-08-15 06:20:00
2 [报告]
发表于 2011-01-26 12:38 |只看该作者
本帖最后由 happy_fish100 于 2011-01-26 12:39 编辑

回复 1# pealdoy

生成的文件名中,包含了创建时间戳、文件大小、源storage server ip地址、文件内容crc32检验码,当文件小于2GB时,还会包含一个随机数。
代码中会循环10次,判断新生成的文件名是否已存在。
所以,当文件小于2GB时,文件重名的概率,非常非常低,重名的问题已经完全避免掉了。

出现这个异常情况,是在压力测试的情况下么?
如果是在压力测试的情况,那可以忽略。这个和java的垃圾回收(包括资源回收)机制有关。

论坛徽章:
0
3 [报告]
发表于 2011-01-26 12:53 |只看该作者
回复 2# happy_fish100


    谢谢回复。

异常确实是压力测试的时候出现的。

论坛徽章:
0
4 [报告]
发表于 2012-09-12 09:45 |只看该作者
本帖最后由 zx4866123 于 2012-09-12 09:46 编辑

回复 2# happy_fish100

膜拜!


   

论坛徽章:
0
5 [报告]
发表于 2012-12-05 12:16 |只看该作者
本帖最后由 payend 于 2012-12-05 12:32 编辑

这个和jvm没有什么关系。
主要还是因为客户端端口被占用满了,无法获取到新的端口。在最新的fastdfs_client_v1.24.jar依然可以出现这个问题。
调整time_wait回收时间也许可以解决这个问题。
  TCP    192.168.1.100:65508   192.168.1.150:23000     TIME_WAIT       0
  TCP    192.168.1.100:65510   192.168.1.150:23000     TIME_WAIT       0
  TCP    192.168.1.100:65513   192.168.1.150:23000     TIME_WAIT       0
  TCP    192.168.1.100:65515   192.168.1.150:23000     TIME_WAIT       0
  TCP    192.168.1.100:65518   192.168.1.150:23000     TIME_WAIT       0
  TCP    192.168.1.100:65519   192.168.1.150:23000     TIME_WAIT       0
  TCP    192.168.1.100:65521   192.168.1.150:23000     TIME_WAIT       0
  TCP    192.168.1.100:65523   192.168.1.150:23000     TIME_WAIT       0
  TCP    192.168.1.100:65525   192.168.1.150:23000     TIME_WAIT       0
  TCP    192.168.1.100:65529   192.168.1.150:23000     TIME_WAIT       0
  TCP    192.168.1.100:65530   192.168.1.150:23000     TIME_WAIT       0
  TCP    192.168.1.100:65531   192.168.1.150:23000     TIME_WAIT       0
  TCP    192.168.1.100:65533   192.168.1.150:23000     TIME_WAIT       0
  TCP    192.168.1.100:65535   192.168.1.150:23000     TIME_WAIT       0

论坛徽章:
0
6 [报告]
发表于 2012-12-13 00:31 |只看该作者
happy_fish100 发表于 2011-01-26 12:38
回复 1# pealdoy

生成的文件名中,包含了创建时间戳、文件大小、源storage server ip地址、文件内容crc ...



请教版主,是怎么将创建时间戳、文件大小、源storage server ip地址……信息包含到文件名中的。怎么一个过程。

论坛徽章:
0
7 [报告]
发表于 2013-01-29 10:59 |只看该作者
包括源storage server ip地址?那我机器迁个机房怎么办?
IP八成是要变啊。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP