- 论坛徽章:
- 0
|
fastdfs-javaapi-连接池.zip
(42.36 KB, 下载次数: 386)
因为业务场景web管理平台上传文件,但由于使用fastdfs java api得到的连接并不支持多线程,但也不能每次申请一个接连之后就关闭(浪费资源)。故需要一个连接池来提高操作文件效率
以下是我看fastdfs java api源代码的时候总结出来的一点小东东,能明白就明白,不明白也行(写的比较乱)。
使用storageClient上传文件时,如果storageServer为null,则程序自动
创建trackerServer,根据trackerServer得到storageServer,并返回storageServer
,在返回storageServer之前会关闭trackerServer。通过storageServer上传完文件
之后,关闭storageServer.
反之storageServer不为null则不会被关闭。
按这个逻辑,创建完storageClient,storageServer,则trackerServer就可以关闭了。
其实不然,这样得到的storageClient上传文件只会上传到storageServer所指向的主机,比方说,
现有a,b两台主机,程序获得的storageServer只指向a.以后使用storageclient上传的文件都会
上传到a的storage,并不会上传b的storage.这样导致不平衡
正常做法建议:trackerServer可以创建连接池,storageServer每次上传文件都重新创建一个。
详情见附见。
谢 212801927(群)里的指点 |
|