什么是内容交付网络和分布式文件系统?

Nik*_*A S 5 distributed-system content-delivery-network system-design distributed-filesystem

我正在努力扩大我在分布式系统和系统设计方面的知识。我遇到过诸如内容交付网络和分布式文件系统之类的术语,用于存储/处理音乐、视频、图片、GIF 等媒体数据。

我知道 DFS 只是我们笔记本电脑中的一个文件系统,它被复制到其他服务器(分布式)以使其 99.9% 可用。CDN是一个可以存储包括javascript、图像、视频等资产的网络。

现在,我对理解两者之间的差异以及哪一个在不同的用例下效果更好有很大的困惑?如果我对CDN和DFS本身的基本理解有误,请指正。提前致谢!

Kar*_*uru 3

他们每个人都有自己的目的。

\n

深度优先搜索:

\n

顾名思义,分布式文件系统(DFS)的文件系统(文件的一部分)分布在多个服务器上,尽管它显示为本地文件系统(本地文件)。也就是说,它使客户端能够访问和处理存储在服务器上的数据,就像在本地系统中一样。DFS 依赖于元数据,支持透明性、文件目录复制,并具有容错机制,通过缓存最近访问的磁盘块和可扩展性来提高性能。

\n

关键的DFS架构如下:

\n

\xe2\x80\xa2 客户端-服务器架构 - 这应基于许多服务器,通过提供系统的全局命名空间来管理多个客户端之间的元数据和数据。

\n

\xe2\x80\xa2 基于集群的架构 - 该系统将元数据和数据解耦,以便一些服务器存储数据,一些服务器专用于管理元数据。如果基于集群的体系结构系统仅具有一个元数据服务器,则其又应被称为集中式系统,而如果其具有分布式元数据服务器,则其又应被称为分布式系统。

\n

例如,HDFS(Hadoop DFS)是DFS的一种,它属于集中式分布式文件系统的范畴,因为有一个称为名称节点的服务器来管理元数据,而数据节点应保存分割的数据,进行分布式和复制。

\n

就 DFS 而言,它可以在团队/组或各种应用程序/流程的众多人员在同一实例上处理巨大文件时提高效率,并像用户/应用程序一样平滑用户/高级应用程序的日常活动不需要知道确切的文件路径或其备份。它使多个用户能够利用基于高效、安全和健壮的文件系统的网络连接的多台机器/主机。

\n

内容分发网络:

\n

CDN 使用部署在各种互联网主干上的服务节点,能够相对于最终用户在空间上分配服务,从而提高性能并确保高可用性。该算法选择最适合为特定请求的用户提供内容(基于跃点距离或负载)的 CDN 节点或边缘服务器。部署了许多技术,例如反应式探测、主动式探测和连接监视来确定 CDN 节点/服务节点的邻近度。

\n

就 CDN 而言,CDN 运营商由许多内容提供商付费,通过相应放置的服务节点/服务器将其内容交付给最终用户。CDN 运营商反过来与 ISP 合作,通过向 ISP 付费,将其服务器托管在其感兴趣的适当位置的数据中心中。

\n