【问题标题】:NodeJS: Download torrent as stream [closed]NodeJS:将洪流下载为流[关闭]
【发布时间】:2021-05-23 12:31:50
【问题描述】:

TL;DR 在将 torrent 传输到出站流时,是否可以代理大于可用本地磁盘的 torrent?

根据 BitTorrent 规范,所有种子都存储为相等长度的片段,我想编写一个节点应用程序可以将种子片段通过管道传输到 http 上传流,是否有任何库提供这样的功能? 我发现的所有实现都将整个文件下载到本地存储,然后进一步传播,这可能会导致在小磁盘和大文件上运行时出现问题。

【问题讨论】:

  • 感谢您的建议,将对包进行一些测试。但是包依赖似乎已经过时了
  • 首先通过搜索词“torrent”找到合适的包)。尝试查找更多最新包
  • 我目前正在尝试使用 webtorrent 包,因为它看起来很相似
  • 在我使用 webtorrent 将 torrent 文件作为流获取然后将其传递给任何写入 Stream 的冒险之后。事实证明,webtorrent 需要将完整文件存储在 /tmp 存储中,因此无法流式传输大于本地磁盘的完整文件。欢迎提出任何建议

标签: node.js p2p bittorrent webtorrent


【解决方案1】:

Bittorrent 专为随机访问而设计,以通过最稀有优先策略保持数据可用。见Section 2.4.2 of the bittorrent econ paper。虽然无论如何都可以以流式方式操作它,但通常不建议这样做,当然也不应该是默认设置,否则所有 swarm 成员的性能可能会严重下降,或者内容甚至可能变得不可用。

【讨论】:

  • 我知道播种是 p2p 网络的核心部分,但由于我的问题是服务器上的本地存储,我希望使用单独的存储后端来播种完成的种子。
  • 如果您在其他地方有单独的存储,也许网络文件系统可以解决您的问题?还是您的意思是 libtorrent 的存储后端?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-25
  • 1970-01-01
相关资源
最近更新 更多