我正在用Django构建一个web应用程序。我选择Django的原因是:

我想使用免费/开源工具。 我喜欢Python,觉得它是一种长期的语言,而对于Ruby,我不确定,而PHP似乎是一个巨大的麻烦。 我正在为一个想法构建一个原型,并没有过多地考虑未来。开发速度是主要因素,而且我已经了解Python。 我知道迁移到谷歌应用程序引擎将更容易,如果我选择这样做在未来。 我听说Django很“不错”。

现在我越来越接近于考虑出版我的作品,我开始担心规模问题。我找到的关于Django伸缩能力的唯一信息是Django团队提供的(我不是说什么要忽略它们,但这显然不是客观的信息…)

我的问题:

目前在Django上构建的“最大”站点是什么?(我主要通过用户流量来衡量规模) Django能每天处理10万名用户,每个用户访问站点几个小时吗? 像Stack Overflow这样的站点可以在Django上运行吗?


当前回答

另一个例子是俄罗斯的交通时刻表服务。它的出勤率符合你的要求。

其他回答

问题是不知道django是否可以伸缩。

正确的方法是理解和知道哪些网络设计模式和工具应该放在django/symfony/rails项目下,以实现良好的扩展性。

一些想法可以是:

多路复用。 反向代理。例如:Nginx,清漆 Memcache会话。例如:Redis 在项目和数据库上进行集群化,以实现负载平衡和容错:例如:Docker 使用第三方存储资产。例子:Amazon S3

希望它能有所帮助。这是我的小石头。

我已经使用Django一年多了,它是如何将模块化、可伸缩性和开发速度结合在一起的,这让我印象深刻。与任何技术一样,它也有一个学习曲线。然而,Django社区提供的优秀文档使这条学习曲线变得不那么陡峭。Django能够很好地处理我交给它的所有事情。看起来它将能够很好地扩展到未来。

BidRodeo Penny Auctions是一个中等大小的Django支持的网站。这是一个非常有活力的网站,每天的访问量也不错。

今天,我们使用许多网络应用程序和网站来满足我们的需求。其中大部分是非常有用的。我将向你展示一些python或django所使用的。

华盛顿邮报》

《华盛顿邮报》的网站是一个非常受欢迎的在线新闻来源,以配合他们的日报。它的大量视图和流量可以被Django web框架轻松处理。 华盛顿邮报- 5220万独立访客(2015年3月)

NASA

美国国家航空航天局的官方网站是关于他们正在进行的太空探索的新闻、图片和视频的地方。这个Django网站可以轻松处理大量的浏览量和流量。 月访问量200万人次

《卫报》

卫报是卫报媒体集团旗下的英国新闻和媒体网站。它几乎包含了《卫报》和《观察家报》的所有内容。这些巨大的数据是由Django处理的。 卫报(评论系统)- 4600万独立访问者(2014年10月)

YouTube

我们都知道YouTube是一个上传猫咪视频的地方,但失败了。作为现存最受欢迎的网站之一,它为我们提供了无穷无尽的视频娱乐。Python编程语言为它和我们喜爱的特性提供了支持。

DropBox

DropBox开启了在线文档存储革命,并已成为人们日常生活的一部分。我们现在几乎把所有东西都存储在云端。Dropbox允许我们使用Python的强大功能来存储、同步和共享几乎任何东西。

调查猴子

Survey Monkey是最大的在线调查公司。他们可以在重写后的Python网站上每天处理超过100万条回复。

Quora

Quora是在线提问和从个人社区获得答案的首选网站。在他们的Python网站上,相关的结果由这些社区成员回答、编辑和组织。

Bitly的

Bitly URL缩短服务和分析的大部分代码都是用Python构建的。他们的服务每天可以处理数以亿计的事件。

Reddit

Reddit被称为互联网的头版。它是基于数千种不同类别的在线查找信息或娱乐的地方。帖子和链接是用户生成的,并通过投票提升到顶部。Reddit的许多功能都依赖于Python。

Hipmunk

Hipmunk是一个在线旅游网站,通过比较顶级旅游网站来为你找到最优惠的价格。这个Python网站的工具可以让你找到你的目的地最便宜的酒店和航班。

点击这里了解更多: 25-of-the-most-popular-python-and-django-websites, What-are-some-well-known-sites-running-on-Django

扩展Web应用程序不是关于Web框架或语言,而是关于你的架构。 这是关于你如何处理你的浏览器缓存,你的数据库缓存,你如何使用非标准的持久性提供者(如CouchDB),你的数据库是如何调优的,还有很多其他的东西…

下面是Django中构建的一些相对高调的东西:

《卫报》的“调查你的议员的开支”应用程序 Politifact.com(这里有一篇博客文章谈论了(积极的)体验。Site获得了普利策奖。 《纽约时报》的代表应用 EveryBlock WaPo的程序员之一Peter Harkins在他的博客上列出了他们用Django构建的所有东西 它有点老了,但是《洛杉矶时报》的人给出了他们为什么选择Django的基本概述。 洋葱的AV俱乐部最近从(我想是Drupal)转移到了Django。

我想很多这样的网站每天的点击率都超过了10万。Django当然可以达到10万/天甚至更多的点击量。但是YMMV的作用取决于你要建什么。

在Django级别有缓存选项(例如在memcached中缓存查询集和视图可以创造奇迹)和其他级别(如Squid这样的上游缓存)。数据库服务器规范也将是一个因素(通常是挥霍的地方),以及您对它的调优情况。例如,不要想当然地认为Django会正确地建立索引。不要认为默认的PostgreSQL或MySQL配置就是正确的。

此外,如果Django运行速度慢,您总是可以选择让多个应用服务器运行Django,并在前面安装一个软件或硬件负载均衡器。

最后,静态内容和Django是在同一个服务器上提供的吗?你用的是Apache还是nginx或者lighttpd?你能负担得起为静态内容使用CDN吗?这些都是需要考虑的问题,但都是很有推测性的。每天10万点击量并不是唯一的变量:你想花多少钱?管理所有这些组件,您有多少专业知识?你有多少时间把这些都整理好?