关闭。这个问题是off-topic .它目前不接受答案。
想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。
12 年前关闭。
Improve this question
我正在尝试构建一个类似于 Youtube 的 Web 应用程序(它不是山寨版),但我想我不知道如何在互联网上很好地提供视频。
我知道如何构建常规的数据库驱动的 Web 应用程序,但与 Youtube 的可扩展性无关。我之前构建的所有应用程序都在一台服务器上运行,文件与 Web 服务器存储在同一台机器上。
如何将应用服务器与文件存储与媒体服务器解耦?
我或多或少想要 4 台机器(机器集群)
1.) 应用服务器
-- 显示网页、处理用户上传、将用户的 Flash 播放器链接到正确的媒体服务器等。
2.) 数据库分片
-- 存储用户信息,查看收藏夹等。
3.) 文件存储
-- 存储媒体文件
4.) 媒体服务器
-- 提供媒体文件
我如何将所有这些联系在一起?我应该利用哪些技术?我在哪里可以了解更多关于架构的信息?
Youtube 的可嵌入 Flash 内容是如何工作的?我想将我的 Flash 播放器嵌入其他网站并将其与我的架构联系起来。
注意我已经调查过:http://highscalability.com/youtube-architecture
但我仍然不明白这些东西是如何联系在一起的。
如果有人可以用高级术语解释所有这些东西是如何工作的?
是否有专用的客户端服务器在内部运行以在应用程序服务器、文件存储等之间混杂所有这些东西。是否全部通过使用 JSON 的 HTTP,这里发生了什么!
谢谢
最佳答案
我推荐的两本书是:
后者由 flickr 的工程总监负责。不是 youtube,但我认为你会发现它很有启发性。
除此之外,High Scalability博客是案例研究和收集智慧的良好来源,所有这些都为进一步探索提供了良好的起点。
关于django - 去哪里学习网络架构?优酷的例子?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1276356/