Roe*_*ler 1101 python django scalability web-applications
我正在构建一个Web应用程序__CODE__.我选择的原因__CODE__是:
__CODE__并觉得这是一种长期的语言,而对于__CODE__我不确定,__CODE__似乎是一个很难学的麻烦.__CODE__.__CODE__如果我将来选择这样做,我知道迁移会更容易.__CODE__"很好".现在我正在考虑发表我的作品,我开始关注规模.我发现的关于扩展能力的唯一信息__CODE__是由__CODE__团队提供的(我没有说什么可以忽视它们,但这显然不是客观信息......).
我的问题:
__CODE__今天建立的"最大"网站?(我主要通过用户流量测量大小)__CODE__处理10万用户,每次访问网站几个小时?__CODE__可以在Django上运行吗?Van*_*ale 902
"今天在Django上建立的最大的网站是什么?"
没有任何一个地方可以收集有关Django建站点上的流量的信息,因此我将不得不使用来自不同位置的数据进行搜索.首先,我们在主Django项目页面的首页上有一个Django站点列表,然后是djangosites.org上的Django站点列表.通过列表并选择一些我知道的流量,我们看到:
Pinterest: Alexa排名第37位(2015年4月21日)和2013年的7000万用户
tabblo.com: 44K每日访问,看到斯内德尔德帖子现代的网站基础设施.
chesspark.com: Alexa的排名大约179K.
pownce.com(不再有效): alexa排名约65k.Pownce的Mike Malone在他关于 Scaling Django Web Apps的 EuroDjangoCon演讲中说"每秒数百次点击".这是关于如何扩展Django的非常好的演示,并且在Django可伸缩性方面提出了一些好处,包括(当前)缺点.
惠普有一个使用Django 1.5:ePrint中心构建的网站.但是,至于novemer/2015,整个网站都已迁移,此链接只是一个重定向.该网站是一项全球服务,参与订购Instant Ink和HP提供的相关服务(*).
"Django每天可以处理100,000个用户,每个用户访问该网站几个小时吗?"
是的,见上文.
"Stack Overflow这样的网站可以在Django上运行吗?"
我的直觉是肯定的,但正如其他人的回答和Mike Malone在他的演讲中提到的那样,数据库设计至关重要.如果我们能找到任何可靠的流量统计数据,也可以在www.cnprog.com上找到强有力的证据.无论如何,它不只是通过抛出一堆Django模型而发生的事情:)
当然,有更多的网站和博主感兴趣,但我必须停在某个地方!
博客文章关于使用Django建立高流量网站michaelmoore.com描述为一个前10,000名的网站. Quantcast统计数据和compet.com统计数据.
(*)编辑的作者,包括这样的参考,曾经在该项目中担任外包开发人员.
S.L*_*ott 260
我们现在正在进行负载测试.我们认为我们可以支持240个并发请求(持续速率为每秒120次点击24x7),服务器性能没有任何显着降低.那将是每小时432,000次点击.响应时间不小(我们的事务很大)但随着负载的增加,我们的基准性能没有下降.
我们正在使用Apache前端Django和MySQL.操作系统是红帽企业Linux(RHEL).64位.我们在Django的守护进程模式下使用mod_wsgi.除了接受默认值之外,我们没有进行缓存或数据库优化.
我们都在64位戴尔的一个虚拟机中(我认为)32Gb RAM.
由于20或200个并发用户的性能几乎相同,因此我们不需要花费大量时间来"调整".相反,我们只需要通过普通的SSL性能改进,普通的数据库设计和实现(索引等),普通的防火墙性能改进等来保持我们的基本性能.
我们测量的是我们的负载测试笔记本电脑在运行16个并发请求线程的15个进程的疯狂工作负载下挣扎.
Nei*_*eil 173
不确定每日访问次数,但这里有一些大型Django网站的例子:
这是Quora上高流量Django站点列表的链接.
jac*_*ian 104
今天建立在Django上的"最大"网站是什么?(我主要通过用户流量测量大小)
在美国,Mahalo.我被告知他们每月处理大约1000万个唯一身份证.
国外,Globo网络(巴西的新闻,体育和娱乐网站); Alexa将他们排在全球前100位(目前约为80位).
其他着名的Django用户包括PBS,国家地理,发现,NASA(实际上是NASA内部的许多不同部门)和国会图书馆.
Django可以每天处理10万用户,每次访问该网站几个小时?
是的 - 但是只有你已经正确编写了应用程序,并且你有足够的硬件.Django不是一个神奇的子弹.
像StackOverflow这样的网站可以在Django上运行吗?
是(但见上文).
技术方面,轻松:参加一次尝试的社交活动.交通方面,竞争钉桩StackOverflow每月不到100万独立.我可以说至少有十几个Django网站的流量超过SO.
Pao*_*ino 79
玩魔鬼的拥护者一点点:
你应该查看由Cal Henderson提供的DjangoCon 2008主题演讲,标题为"为什么我讨厌Django",他几乎完成了Django遗漏的所有内容,你可能想要在一个高流量的网站上做.在这一天结束时,你必须采取所有这一切以开放的心态,因为它是完全有可能写出Django的应用包含的规模,但我认为这是一个很好的介绍和有关你的问题.
Bay*_*del 51
我所知道的最大的django网站是华盛顿邮报,这肯定表明它可以很好地扩展.
良好的设计决策可能比其他任何事情都有更大的性能影响.Twitter经常被引用作为一个网站,它体现了另一个基于动态解释语言的Web框架Ruby on Rails的性能问题 - 但Twitter工程师已经声明该框架并不像他们早期做出的一些数据库设计选择那么多问题上.
Django与memcached非常合作,并提供了一些用于管理缓存的类,您可以在这里解决大多数性能问题.实际上,您在线上传输的内容几乎比后端更重要 - 使用像yslow这样的工具对于高性能Web应用程序至关重要.您可以随时在后端投入更多硬件,但无法更改用户带宽.
jes*_*ess 24
我相信你正在寻找一个更加可靠的答案,但我能想到的最明显的目标验证是谷歌推动Django与其App Engine框架一起使用.如果有人知道并定期处理可扩展性,那就是谷歌.从我所读到的,最受限制因素似乎是数据库后端,这就是谷歌使用自己的...
Mus*_*han 17
如高性能 Django Book中所述, 并通过此Cal Henderson
查看下面提到的更多细节:
听到人们说"Django不能扩展"并不罕见.根据您的观察方式,该陈述完全正确或明显错误.Django本身并没有扩展.
Ruby on Rails,Flask,PHP或数据库驱动的动态网站使用的任何其他语言也是如此.
然而,好消息是Django与一套缓存和负载平衡工具进行了精美的交互,这些工具可以扩展到可以投入的流量.
与您在线阅读的内容相反,它可以在不替换通常标记为"太慢"的核心组件(如数据库ORM或模板层)的情况下执行此操作.
Disqus每月提供超过80亿的页面浏览量.这些是一些巨大的数字.
这些团队已经证明Django肯定会扩展.我们在林肯环路的经验支持它.
我们已经建立了大型Django网站,可以在Reddit主页上度过一天,而不会出汗.
Django的扩展成功故事几乎无法在此列出.
它支持Disqus,Instagram和Pinterest.想要更多证明吗?Instagram能够在Django上维持超过3000万用户,只有3名工程师(其中2名没有后端开发
Sim*_*ans 16
今天,我们根据需要使用许多网络应用和网站.其中大多数非常有用.我将向您展示python或django使用的一些内容.
华盛顿邮报的网站是一个非常受欢迎的在线新闻来源,可以附上他们的日报.它的大量视图和流量可以通过Django Web框架轻松处理.
Washington Post - 52.2 million unique visitors (March, 2015)
美国国家航空航天局的官方网站是查找有关其正在进行的太空探索的新闻,图片和视频的地方.这个Django网站可以轻松处理大量的视图和流量.
2 million visitors monthly
卫报是卫报传媒集团旗下的英国新闻和媒体网站.它几乎包含了"卫报"和"观察家报"的所有内容.这些巨大的数据由Django处理.
The Guardian (commenting system) - 41,6 million unique visitors (October, 2014)
我们都知道YouTube是上传猫视频的地方而且失败了.作为现有最受欢迎的网站之一,它为我们提供了无尽的视频娱乐时间.Python编程语言支持它和我们喜欢的功能.
DropBox启动了存储革命的在线文档,该革命已成为日常生活的一部分.我们现在几乎将所有内容存储在云中.Dropbox允许我们使用Python的强大功能存储,同步和共享几乎任何东西.
Survey Monkey是最大的在线调查公司.他们每天可以在重写的Python网站上处理超过一百万条回复.
Quora是在线提问和从个人社区获得答案的第一名.在他们的Python网站上,相关结果由这些社区成员回答,编辑和组织.
Bitly URL缩短服务和分析的大部分代码都是用Python构建的.他们的服务每天可以处理数亿个事件.
Reddit被称为互联网的头版.它是在线查找基于数千种不同类别的信息或娱乐的地方.帖子和链接是用户生成的,并通过投票提升到顶部.Reddit的许多功能都依赖于Python的功能.
Hipmunk是一个在线消费者旅游网站,比较热门旅游网站,为您找到最优惠的价格.这个Python网站的工具允许您找到最便宜的酒店和航班.
点击这里了解更多: 25个最受欢迎的python-and-django网站, 什么是一些知名的网站 - 运行在Django
cou*_*lix 12
是的,它可以.它可能是使用Python或Ruby on Rails的Django.它仍然会扩展.
几种不同的技术.首先,缓存不是缩放.除了硬件平衡器之外,您还可以将多个应用程序服务器与nginx作为前端进行平衡.要在数据库端扩展,如果你采用RDBMS方式,你可以在MySQL/PostgreSQL中使用read slave.
Django中交通繁忙的网站的一些很好的例子可能是:
你可以感到安全.
以下是Django中构建的一些相对高调的内容列表:
卫报的" 调查你的MP费用 "应用程序
Politifact.com(这是一篇关于(积极)体验的博客文章.网站赢得了普利策奖.
纽约时报的代表应用程序
WaPo的程序员之一Peter Harkins 在他的博客上列出了他们用Django构建的所有东西
它有点老了,但洛杉矶时报的某个人基本概述了他们为什么选择Django.
洋葱的AV俱乐部最近从(我认为Drupal)转移到了Django.
我想这些网站中的一些可能每天都会超过10万次点击.Django当然可以达到每天100k次点击次数.但YMMV根据您正在建设的内容获取您的特定网站.
有在Django的级别缓存选项(例如高速缓存查询集和意见在分布式缓存可以创造奇迹)及以后(如上游缓存鱿鱼).数据库服务器规范也是一个因素(通常是挥霍的地方),以及你调整它的程度.例如,不要假设Django正在正确设置索引.不要认为默认的PostgreSQL或MySQL配置是正确的.
此外,如果这是慢点,您可以选择让多个应用程序服务器运行Django,前面有软件或硬件负载平衡器.
最后,您是否在与Django相同的服务器上提供静态内容?您使用的是Apache还是像nginx或lighttpd?你能负担得起将CDN用于静态内容吗?这些都是需要考虑的事情,但这些都是非常具有推测性的.每天100k次点击不是唯一的变量:您想花多少钱?您管理所有这些组件有多少专业知识?你有多少时间把它们拉到一起?
YouTube的开发者倡导者在PyCon 2012上讨论了缩放Python,这也与缩放Django有关.
YouTube拥有超过10亿用户,YouTube基于Python构建.
我已经使用Django超过一年了,对于如何将模块化,可扩展性和开发速度结合起来给我留下了非常深刻的印象.与任何技术一样,它带有学习曲线.然而,Django社区的优秀文档使这种学习曲线变得更加陡峭.Django能够很好地处理我所做的一切.看起来它能够很好地适应未来.
BidRodeo Penny Auctions是一款中等规模的Django网站.它是一个非常动态的网站,每天处理大量的页面浏览量.
请注意,如果您希望每天有100K用户,一次有效几小时(意味着最多20K +并发用户),那么您将需要大量服务器.SO拥有约15,000名注册用户,其中大多数可能每天都不活跃.虽然大部分流量来自未注册的用户,但我猜他们中很少有人会在网站上停留超过几分钟(即他们关注谷歌搜索结果然后离开).
对于该卷,预计至少有30台服务器......每台服务器仍然是一个相当重的1,000个并发用户.
小智 5
我使用Django为爱尔兰的国家广播公司开发高流量站点。它对我们很好。开发高性能站点不仅仅只是选择一个框架。框架将只是与最薄弱的环节一样强大的系统的一部分。如果问题是数据库查询速度慢或服务器或网络配置错误,则使用最新的框架“ X”不能解决您的性能问题。
小智 5
我不认为这个问题真的与 Django 缩放有关。
我真的建议你研究一下你的架构,它可以帮助你满足你的扩展需求。如果你弄错了,那么 Django 的表现就毫无意义。性能!= 规模。您可以拥有一个具有惊人性能但无法扩展的系统,反之亦然。
您的应用程序数据库是否绑定?如果是这样,那么您的规模问题也存在。您打算如何与 Django 的数据库进行交互?当您的数据库无法像 Django 接受请求那样快地处理请求时会发生什么?当您的数据超过一台物理机时会发生什么。您需要说明您计划如何处理这些情况。
此外,当您的流量超过一台应用服务器时会发生什么?在这种情况下如何处理会话可能会很棘手,通常情况下您可能需要无共享架构。同样,这取决于您的应用程序。
简而言之,语言不是决定规模的因素,语言负责性能(同样取决于您的应用程序,不同语言的性能不同)。是您的设计和架构使扩展成为现实。
我希望它有所帮助,如果您有任何问题,将很乐意提供进一步帮助。
今天建立在Django上的"最大"网站是什么?(我主要根据用户流量衡量尺寸)
Pinterest
disqus.com
更多信息,请访问https://www.shuup.com/en/blog/25-of-the-most-popular-python-and-django-websites/
Django可以每天处理100,000个用户,每个用户访问该网站几个小时吗?
是的,但使用适当的架构,数据库设计,使用缓存,使用负载平衡和多个服务器/点头
像Stack Overflow这样的网站可以在Django上运行吗?
是的,只需要按照第二个问题中提到的答案
| 归档时间: |
|
| 查看次数: |
179155 次 |
| 最近记录: |