可靠的下载服务器

rd-api的Python项目详细描述


https://img.shields.io/pypi/v/rd-api.svghttps://img.shields.io/pypi/l/rd-api.svghttps://img.shields.io/pypi/wheel/rd-api.svg

rd api是一个http文件服务器,它提供静态文件托管和可靠的 下载rd client的api。

rd api提供web根目录下的文件。你可以像python3 -m http.server那样使用它。

此外,如果使用rd命令行工具进行下载,它将 以可靠的方式下载,以2mib块下载并验证校验和 每个街区。

安装

要安装此软件包:

$ sudo apt install -y redis-server   # redis is used to cached block sha1sum
$ pip install --user rd-api
$ rd-api --help
$ ~/.local/bin/rd-api --help     # if ~/.local/bin/ is not in PATH

百色用量

服务器端:

$ ls
bigfile1 bigfile2
$ rd-api --host 0.0.0.0 --port 8082

客户端(需要rd client):

$ rd http://server-ip:8082/bigfile1

文档

可靠的下载是这样实现的:

  • 用户使用rd客户端请求下载资源。
  • rd客户端通过/rd/api请求资源块元数据。块元数据 包含块计数、块id、块字节偏移量、块内容sha1sum。
  • rd api以增量方式计算块元数据并将其提供给rd客户端。 块元数据在计算后缓存在redis中。
  • rd客户端使用http/1.1范围头获取块并验证sha1sum 逐渐地。当下载并验证所有块时,合并块 得到最后的资源。
  • RD客户端将在http错误和sha1sum验证失败时重试。
  • RD客户端支持继续部分下载。您可以按CTRL-C键 随时停止下载,稍后再次运行同一命令继续。

可靠的下载是用haskell编写的,二进制文件是在pypi上发布的 易于在Linux系统上安装。可靠的下载只在Linux中运行。

更改日志

  • v1.1.0.0 2018年5月10日
    • 功能:支持使用env变量传递参数,对于cli arg–redis host,env变量将是redis_host。
    • 错误修复:修复字符串类型的cli参数分析
  • v1.0.0.3 2018-05-09
    • 更新安装文档,rd api需要redis服务器
  • v1.0.0.2 2018-05-09
    • 初始释放。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
带有字符串的java JNA调用与带有字节[]的java JNA调用的行为不同   java基于键列表获取子映射   重启后永久增加java堆大小?   JavaHTTPS服务器:相互SSL身份验证   java为什么接受接口的方法会拒绝该接口的实现?   片段中的java视图无法应用于()   ms access Java SQL更新命令不工作   java将web服务自动打包和部署到Oracle Application Server 10g   java有没有办法在安卓 studio中为安卓时钟设置多个警报?   位于FTP服务器上的文件上的Java校验和md5   在Java中创建类时遇到问题。有些方法不太确定   java错误:在类chrome\u驱动程序中找不到主方法   通用海图(Javascript\Java)