在设计大型社交网站(有很多交易,比如推特)时,我应该使用哪些技术?使用开源解决方案 - 数据库 - 网络服务器 - os
答案 0 :(得分:10)
正如你所看到的,你选择的并不重要;所有这些网站都有很多流量,但基于非常不同的技术。
答案 1 :(得分:6)
社交网站中最重要的是后端,因为大部分瓶颈都来自那里。您可能想要考虑No-SQL数据库。
还有其他几个像:
至于编程语言,正如其他人所说,这并不重要。但如果你真的无法决定,你可能想要考虑一个非阻塞的网络服务器,如Tornado。
答案 2 :(得分:2)
只要您大量使用memcached,无论您选择哪种脚本语言都无关紧要。拥有正确的缓存层次结构是必须的。
答案 3 :(得分:2)
在一天结束时,这是个人喜好的问题。 Twitter使用Ruby on Rails。维基百科在PHP上运行。 Reddit使用名为web.py的Python库,但最初,它是用Lisp编写的。我会说选择你最熟悉的技术。
答案 4 :(得分:2)
雅虎工程师优化高性能网站的好书是High Performance Web Sites: Essential Knowledge for Front-End Engineers。它很好,简短,基本上是一个项目符号指南,通过优化不太好探索的前端,使网站更快地采取步骤。
答案 5 :(得分:1)
全世界的人们都在不断地使用.NET,使用Java和使用PHP来构建Web应用程序。由于技术的选择,它们都没有失败。
选择您最熟悉的“三巨头”(.Net,Java或PHP)中的哪一种 - 众所周知这些技术是可扩展的,您的网站是否可扩展的真正问题是网站的结构和方式代码的质量 - 使用您最熟悉的框架为您提供实现这一目标的最佳机会。
答案 6 :(得分:0)
任何适合您口味的技术,在您的情况下,我认为算法更重要。
答案 7 :(得分:0)
技术,技术,
答案 8 :(得分:0)
如果您正在构建像Facebook这样的东西,那么您的选择有点受限,Facebook制作了自己的PHP运行时,请检查HipHop For PHP