去哪里学习网络架构?Youtube的例子?

5 architecture django web-services

我正在尝试构建一个类似于Youtube的网络应用程序(这不是一个淘汰赛),但我想我不知道视频是如何在互联网上提供的.

我知道如何构建常规的数据库驱动的Web应用程序,但没有像Youtube的可扩展性.我之前构建的所有应用程序都在一台服务器上运行,文件存储在与Web服务器相同的盒子上.

如何将应用程序服务器与文件存储器与媒体服务器分离?

我或多或少想要4台机器(机器集群)

1.)应用程序服务器 - 显示网页,处理用户上传,将用户的Flash播放器链接到正确的媒体服务器等.

2.)数据库分片 - 存储用户信息,检查收藏夹等.

3.)文件存储 - 存储媒体文件

4.)媒体服务器 - 提供媒体文件

如何将所有这些挂钩?我应该利用哪些技术?我在哪里可以了解更多有关架构的信息?

Youtube的可嵌入闪存材料如何工作?我想将我的Flash播放器嵌入其他网站,并将其与我的架构相结合.

注意我已经研究过:http://highscalability.com/youtube-architecture

但我仍然无法全面了解这些东西是如何结合在一起的.

如果有人能够从高层次的角度解释所有这些东西是如何工作的?

是否存在内部运行的专用客户端服务器,以便在应用程序服务器,文件存储等之间对所有这些内容进行混乱.是否所有这些都是通过HTTP使用JSON,这里发生了什么!

谢谢

ars*_*ars 1

我推荐的两本书是:

后者是由 flickr 的工程总监撰写的。不是 youtube,但我想你会发现它很有启发。

除此之外,高可扩展性博客是案例研究和收集智慧的良好来源,所有这些都为进一步探索提供了良好的起点。