【问题标题】:How to configure Riak 1.3.* with range request (Accept-Ranges: bytes)如何使用范围请求配置 Riak 1.3.*(接受范围:字节)
【发布时间】:2013-06-10 20:11:10
【问题描述】:

我正在尝试使用 riak 来存储视频内容。我已经能够使用正确的 mite 类型将我的视频推送到 riak,并且我还可以通过其 URL 接收视频。

riak 页面告诉我,版本 1.3.* 中的 riak 能够支持范围请求。

但是 curl -I MYRIAKVIDEOURL 不返回 Accept-Ranges: bytes HTML Header (就像我的 apache 正在做的那样。另外,当尝试通过 VLC 发出 renge 请求时(通过寻找视频的中间),似乎, 没有发起范围请求, 因为加载需要很长时间并且网络显示大量下载的流量. 当对我的 apache 服务器提供的视频 URL (在同一台机器上尝试) 执行相同操作时, 范围请求在 VLC 中运行良好.

关于如何在 riak 上实现这一点的任何想法(在 Debian 7 上运行,从源代码编译,也尝试使用 Ubuntu 12.04)?我可以操纵 riak 发送的 HTTP 标头吗?

感谢您的帮助

【问题讨论】:

    标签: request range riak


    【解决方案1】:

    您打算使用 Riak 吗?我认为 Riak CS 适合存储视频文件。 Riak CS 支持 GET 对象请求的 Range 标头。

    s3curl 的示例请求如下:

    s3curl.pl -- -v -x localhost:8080 -H 'Range: bytes=1000-2000' \
        http://yourbuckethere.s3.amazonaws.com/your/file/here
    

    【讨论】:

    • 好的,所以我应该使用 Riak CS(我第一次尝试将它安装到 Ubuntu 12.04 时失败了,但会再试一次)。
    • Riak CS 如何在内部管理内容的获取和交付?例如,我有一个 5 Box Riak 设置和一个 3 Box 复制。将文件上传到 Box 1 时,该文件将被复制到 Box 2、3、4。当请求 Box 5 上的文件时,哪个 Box 会在内部从内部获取文件,然后将其传递到 Box 5 上?它会从所有盒子(1-4)中获取文件的一部分,它会从当前负载最低的盒子中获取吗?该文件是否也被缓存或复制到框 5,因此对该文件的下一个请求不需要一些内部流量?
    • 范围请求怎么样,例如在每个 riak (cs) 节点前面放置一个 nginx 代理时?
    • Riak CS 通过多个 Riak 键值对、一个清单(如 i-node 的元数据)和一些 1MB 块来管理一个文件。每个 Riak 键值对通过一致散列分布在 5 个节点(在您的情况下)。如果清单键值对存储在节点 2,3 和 4 中,Riak 节点 5 从 2,3 和 4 获取值。Riak 和 Riak CS 中没有缓存机制。
    • 我不明白您想通过上面的范围请求问题了解什么。 Riak/RiakCS的nginx配置或内部流量?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-08
    • 2017-08-03
    • 2013-05-17
    • 2017-05-06
    • 2017-12-13
    • 1970-01-01
    • 2022-11-30
    相关资源
    最近更新 更多