Merge pull request #52 from longbai/multi-up-host

重构部分代码
Merge pull request #53 from longbai/multi-up-host

使用自定义的exception
stash
remove useless retry
uri.getEncodedPath() --> uri.getPath()
Merge pull request #54 from longbai/remove-retry

remove useless retry
Merge pull request #55 from simon-liubin/fix/file-path

uri.getEncodedPath() --> uri.getPath()
io retry