服务器间并发下载技巧
来源:互联网 发布:知乎45个神回复 编辑:程序博客网 时间:2024/05/20 15:59
一个需求,点击页面后去下载文件 ,然后使用 ,多个用户点击下载同一个文件使用 。
分析下,需求的要求就是有人去下载了,就不再下载,等待下载完成 ,直接读取使用 。
1。问题难点 ,这么多人 ,谁先下载 ,本地有文件了,但是是否真的下载好了,还是下载了一半。
2. 第一个人先读取本地文件的同名,但是后缀为 .ok的文件 (此为自己创建的空文件,下载完成后自己创建,如果没有则证明没有下载好此文件,有的话说明文件存在,直接使用即可)
3. 如果没有 .ok 文件 第一个人会先读取 本地缓存 ,是否有人在下载了,如果没有,则加锁,并去下载 。 下载完成后,创建同名.ok 文件
4. 第二个人去看 没有 .ok 去读取缓存 ,有人下载了,便进入等待。,如果超时则返回异常
5. 重点,任何的异常,都要移除缓存中的锁,防止下载失败,但是无人能下载 。
阅读全文
0 0
- 服务器间并发下载技巧
- 高并发文件下载服务器配置
- 对多下载任务并发的处理技巧
- Apache服务器限制并发连接和下载速度
- Apache服务器限制并发连接和下载速度
- 并发服务器
- 并发服务器
- 并发服务器
- 并发服务器
- 并发服务器
- 并发服务器
- 并发TCP服务器和并发UDP服务器
- 服务器下载
- iOS并发编程技巧
- JavaScript并发下载
- python爬虫-->并发下载
- 多线程并发下载
- 并发服务器和循环服务器
- 学生表 (顺序表)
- Android Binder 修炼之道(三)Binder 系统C++实现 BpXXX代理类分析
- Ubuntu获取系统时间
- 配置网络yum源遇到的问题之解决办法
- JAVA排序算法 -- Arrays.sort()
- 服务器间并发下载技巧
- Leetcode 653. Two Sum IV
- UDP服务器
- ZIGBEE AD 转换 片内温度学习总结
- could not open 'D:\Java\lib\amd64\jvm.cfg
- 常量
- For-each循环优于for循环感悟
- [随心译]2017.8.10-随心译以后转到简书
- ZIGBEE 电源控制之中断唤醒