Chaturbate 是一个非常受欢迎的网站,但你们有没有想过是什么技术推动了它? 毕竟,它能够在任何给定时间为大量观众处理数千个并发直播。
为了了解处理的流量范围和数量,Chaturbate 在任何给定时间平均在线拥有 1,000 到 3,000 个凸轮模型。 其中每一个的观众规模从少数到上千不等。
与本地银行(例如)获得的微不足道的流量相比,Chaturbate 之类的网站如何处理这么好的流量?
为了理解这一点,让我们看一下 Chaturbate 是如何构建的。
在 WHSR 上查看 Chatubate(不是 Camgirls)

WHSR 最近实施了一项功能(您可以在我们的主页上访问它),使我们的读者能够查看网站的强大功能。 从他们的域名服务器到 IP 地址和网络技术,您只需输入您要检查的网站地址即可访问所有内容。
为了证明这一点,我检查了 Chaturbate,因为他们如何处理如此巨大的负载确实令人印象深刻(不是双关语)。 除了他们使用的网络托管资源的纯粹力量之外,网络技术在很大程度上有助于他们的能力。
从上图中可以看出,Chatubate 利用 姜戈 (发音为 JANG-oh),一个 Python 框架。 这是帮助它保持灵活而强大的部分原因。 为了理解为什么,让我们来看看 Django 到底是什么以及做什么。
什么是姜戈?
Django 使 Python 开发人员可以更轻松地快速构建 Web 应用程序。 Python 本身是一种高级语言,因此学习起来相对简单。 最重要的是,它旨在增强代码的可读性。
Django 接受并进一步改进它,允许代码潜水员构建重复代码以供重用。 这导致代码体积更小,因此 Web 应用程序更轻、更敏捷。
如果您曾经听说过“事半功倍”这个词,那只是概括了 Django 框架背后的理论。
另请阅读 – 最佳 Django 托管服务
为什么 Django 如此强大?
从鸟瞰的角度来看,Django:
- 有助于加快应用程序 Web 开发
- 全面集成常用开发任务
- 对于站点流量具有高度可扩展性
- 具有多个内置安全辅助工具
- 可用于构建各种网络应用程序
建立在 Django 上的很棒的网站
1.Instagram

据 Instagram 的工程团队称,他们的网站目前代表了现有 Django 框架上最大的部署。 它完全用 Python 编写,因为它既简单又实用。
由于平台的庞大规模和增长率,他们最终也不得不关注效率。 尽管如此,Django 仍然能够为他们做到这一点,因为它能够支持迄今为止的增长。
2. Spotify

Spotify 的增长率较为温和,但近年来增速明显加快。 由于其站点的性质,MapReduce 发挥着重要作用。 为此,他们选择用 Python 编写这些代码。
他们使用 Python 构建了 6,000 多个进程。 Django 确实发挥了作用,但程度较轻,主要是在卫星应用程序中。 尽管如此,核心 Python 概念仍然存在,并在很大程度上适用于原型设计、构建过程等
3. Mozilla Firefox 支持网站

虽然 Mozilla 并非完全建立在 Django 之上,但他们的许多业务都是如此。 其中的一些示例包括 Firefox 支持站点。 除此之外,他们还使用基于 Django 的应用程序,例如为 Mozilla 开发人员网络 Webdocs 提供支持的 Kuma。
4. 谷歌寻人

甚至像谷歌这样大的公司也使用了 Django。 然而,考虑到组织的规模和范围,并非一切都建立在 Django 框架之上。 一个例子是他们的 Person Finder 工具。
除此之外,从事其他非核心项目的 Google 工程师也广泛使用 Python 和 Django。 一些构建的代码甚至可以在 Github 上供公众查看和改编。
Python 还用于 YouTube、code.google.com 以及 Google 涵盖的其他领域。
5. Disqus

Disqus 与此列表中的其他实例有些不同,因为它并没有真正被视为一个实例。 该应用程序可用作网络插件,用于在整个网络上进行安装。 这使得他们对平台的选择非常有趣。
随着网络的发展和请求量达到新的高度,他们选择了 Django 并没有后悔。 与纯粹的性能相比,Discus 工程师更喜欢快速开发和熟悉,而 Django 正好适合。
6. HubSpot

从更实际的意义上说,HubSpot 是 Django 环境构建和运行 CRM 应用程序的一个很好的例子。 该应用程序在 Python 3 和 Django Rest Framework 上运行,可帮助客户通过自动化简化销售和营销人员的工作。
还有一些 HubSpot API 使用相同的框架构建并在 Github 上发布,或者至少作为包装器。
7. 美国国家航空航天局

我见过多次提到使用 Django 和/或 Python 的 NASA 站点,但这并不完全正确。 与许多其他公司一样,NASA 仅将其用于特定应用,例如少数实用程序。
使这些用例有趣的是,尽管 NASA 没有顶级站点可能的流量,但它们处理大量带宽。 这是为了涵盖他们交付的超大尺寸高分辨率图像。
8. 保管箱

像 Dropbox 这样的云存储站点是使用 Python(以及因此 Django)的理想选择。 从早期开始,Dropbox 就建立在 Python 之上,在他们的案例中,观察到了一些重要的东西。
当涉及重大迁移时,涵盖 Dropbox 的庞大规模和范围的应用程序可不是一件小事。 Dropbox 于 2015 年开始从 python 2 迁移到 Python 3——这一迁移花了整整三年的时间才完成!
9.乌迪米

出于与 YouTube 和 NASA 类似的原因,Udemy 也将 Django 和 Python 用于他们的网站。 这在多种方面都有帮助,从即用型预建流程到可靠性的稳健性。
Django 尤其适用于像 Udemy 这样具有非常样板功能的网站,这些功能仍然可以由他们自己的开发人员进一步定制。 它有助于提供他们可以建立的非常广泛的基础。
10. 歌剧

Mozilla 并不是唯一在 Django 上看起来不错的浏览器,Opera 也有部分基于 Django 构建。 例如,它们的同步功能完全在 Django 上完成,使用 Python 驱动程序和 Cassandra 引擎。
这是 Django 如何帮助开发人员快速构建解决方案的另一个示例,这要归功于它拥有的广泛的预构建代码库。
11. 华盛顿邮报

华盛顿邮报在引入框架时就将 Django 用于某些功能。 这是一个早期的信任投票,当时,该应用程序使用了超过 400 万条记录的数据库。
Django 应用程序旨在处理华盛顿邮报的 Congress Vites 数据库。 即使在运营高峰期,它也很稳定,在处理大量交通时也没有问题。
12. 姜戈女孩

正如他们所说,证据就在布丁中,这个网站把钱放在他们嘴里。 Django Girls 是一个非营利组织,通过组织免费的编程研讨会(包括工具和资源)来帮助女性。
该站点是使用 Django 框架构建的,它们自然地教授 HTML、CSS、Python 和 Django。 它自 2014 年上线以来,已经聚集了超过 2,000 人的庞大志愿者队伍来帮助 Django Girls 社区。
看起来很棒! 我在哪里可以得到 Django?
Django 是开源的,拥有庞大而专注的粉丝群。 这意味着它可以广泛使用,但我建议您在 Django 项目网站上查找它。 Django 可以在运行各种平台(如 Windows)的本地机器上安装和运行。
或者,您可以寻找支持 Django 的 Web 托管并构建以立即部署。 毕竟,如果您可以尽早启动 Web 应用程序,为什么还要浪费时间配置本地计算机。
不过,并非所有主机都支持 Django,无论如何您都需要注意网络主机的性能。 为了帮助您,我们还整理了一些您可以找到的最佳 Django 托管服务。
最后的想法:Django 最适合的地方
尽管我们已经概述了所有用例,但 Django 并不总是理想的解决方案。 当您正在构建需要基础但易于定制的东西(例如视频流或社交媒体网站)时,这真是太棒了。 不过,关键焦点并不是重新发明轮子。
由于 Django 还有助于隐藏源代码,因此使用它还提供了非常好的针对代码漏洞的一线防御。 当您考虑其用户身份验证模型时,Django 也非常适合安全环境。
尽管如此,尽管环境有这个和其他优点,但在某些情况下 Django 并不理想。 例如,它对可重用性的关注导致开销稍大,在用于构建较小的应用程序时效率较低。
要知道何时使用 Django,只需根据您的需求提供文档。 如果您的主要目标是可靠性、快速部署或安全性,那么 Django 可能是一个不错的选择。
阅读更多: