笔者最近在测试fastDFS,暂时部署在了一个外网环境中。本机win7能够telnet通,服务器测试fastDFS没有问题。
但是通过java代码访问时,一直报异常,链接超时。
执行main方法时报错:
java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:75)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:157)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391)
at java.net.Socket.connect(Socket.java:579)
at org.csource.fastdfs.TrackerGroup.getConnection(TrackerGroup.java:47)
at org.csource.fastdfs.TrackerGroup.getConnection(TrackerGroup.java:72)
at com.eric.core.resource.fastdfs.FastDFS.uploadFile(FastDFS.java:107)
at com.eric.core.resource.fastdfs.FastDFS.main(FastDFS.java:257)
解决的办法:
storage的tracker_server地址必须是外网地址,重启FastDFS就好了。