algorithm - 为什么客户端计算机不通过 Internet 向其他客户端提供信息以减少服务器带宽?

标签 algorithm cloud bandwidth

以图片托管服务为例。为了减少带宽/您提供图像的次数,是否可以让刚刚查看图像的客户然后将相同的图像文件(或该文件的片段)提供给希望查看同一页面的另一个客户/图像?是否存在阻止这种情况发生的安全相关问题,或者我对技术的缺乏了解使我无法看到这行不通的明显原因..

如果每个客户端提供的数据量与它们消耗的数据量相同,则网络服务器只需一次提供任何给定文件,其余带宽将由客户端占用。

编辑:我知道 P2P 和比特流。我在问,为什么不把这个概念应用到一般的网上冲浪事件中呢?

最佳答案

您描述的模型是 P2P 模型,这正是某些协议(protocol)(例如 BitTorrent 的工作方式)。

如果您问为什么这种协议(protocol)不用于网站或一般目的的内部使用,可能有两个主要原因:

  1. 这在技术上可能很难做到:您必须能够以巧妙的方式将客户重定向到彼此,您必须能够让客户实际上发送文件(这需要访问他们的系统,你通常没有的东西),你可能必须考虑每个客户端的速度之类的事情(即你不希望有人使用旧的,非常提供图像的连接速度慢,因为您的网站看起来会很慢)。原因还有很多,这些只是我能想到的最紧迫的问题。
  2. 它会很不受欢迎:即使假设您可以以某种方式想出这样做的方法,这种事情也可能不会很受用户欢迎你的网站。用户通常不想“共享”他们的计算机空间/带宽/等。大多数情况下,公司会在某人的计算机上安装“ spy 软件”或其他此类隐藏的东西,但他们的宣传非常糟糕。

总而言之,我认为没有人会认真考虑尝试做这样的事情,主要是出于我上面概述的两个原因。

关于algorithm - 为什么客户端计算机不通过 Internet 向其他客户端提供信息以减少服务器带宽?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1482216/

相关文章:

download - 拒绝机器人下载我的文件

java - 在一组日期中查找时间空间

algorithm - 数组中最常见的元素/确定性地在 O(n) 时间和 O(1) 空间中找到相对多数?

docker - 用于基于 Docker 的项目的基于云的 IDE?

javascript - 无法更改 Parse Cloud Code 中的用户安装

php - 采埃孚媒体 Assets 如何实现云存储?

python - 获取 SciPy 的 gaussian_kde 函数使用的带宽

php - 我怎样才能检测到 "Slashdotted"并存活下来?

java - 了解大 O 符号 - 破解编码面试

algorithm - 是否有任何采用 7 字节 key 的 DES 库或代码?