Web applications 文本密集型网站如何在内部存储文本?

Web applications 文本密集型网站如何在内部存储文本?,web-applications,text,Web Applications,Text,我想知道,像stackoverflow.com、news.yahoo.com、bbc.co.uk这样的“文本密集型”网站是如何在内部存储文本的 这些文本是否存储为文本文件?还是存储在数据库中 他们如何应对不断增加的内容 通常在数据库中。当使用mysql时,他们通常使用文本、mediumtext或longtext。它们与日期、评级和标记等列一起位于一个表中。标记可能在另一个表中,但也可以在一个表中用逗号分隔。每个站点的数据库可能有所不同。这些站点背后总是某种数据库 对于相对较小的数据库(stack

我想知道,像stackoverflow.com、news.yahoo.com、bbc.co.uk这样的“文本密集型”网站是如何在内部存储文本的

这些文本是否存储为文本文件?还是存储在数据库中


他们如何应对不断增加的内容

通常在数据库中。当使用mysql时,他们通常使用文本、mediumtext或longtext。它们与日期、评级和标记等列一起位于一个表中。标记可能在另一个表中,但也可以在一个表中用逗号分隔。每个站点的数据库可能有所不同。

这些站点背后总是某种数据库

对于相对较小的数据库(stackoverflow、bbc等),一个普通的关系数据库就足够了——比如MySQL、Postgresql或Oracle


对于真正的大公司(ebay、亚马逊、谷歌),他们通常有某种专有的数据库解决方案,因为标准数据库无法处理这种负载

这些网站中的大多数将使用内容管理系统,将文本存储在数据库中。Stackoverflow允许我们编辑内容,而像BBC这样的网站只允许他们的记者在他们的系统上实际添加和编辑内容


大多数网站都会使用某种标记语言将样式编码到文本中。您可以在此处了解StackOverflow使用的标记系统:

为什么要使用标记语言,而不仅仅是存储html?标记允许文本以不同的方式转换为不同的输出和设备。您可以转换为html以显示在网页上,但对电子邮件使用不同的转换,对某些移动设备使用另一种转换

搜索谷歌的降价和纺织为例。你也可以查看维基百科的信息

他们如何应对不断增加的内容


当数据库负载过重时,他们将不得不使用单独的数据库服务器,如果这还不够,则需要或多或少复杂的设置;)

使用数据库将是更好的方法:

  • 它有大量的内存,可以保存频繁请求的数据。对于文件系统,您将依赖于通用的读缓存机制
  • 一旦数据库不能自己处理负载,就可以设置多个影子服务器或其他负载平衡方案。比某些文件复制机制更易于维护

  • 英国广播公司使用Drupal,一种开源内容管理系统。我认为大多数报纸使用某种形式的商业CMS,比如Vignette。所有这些CMSE都将文本存储在数据库中,并为客户端提供添加文本的简单方法。以Drupal.org为例——theonion.com和其他报纸也使用Drupal。

    我不认为BBC算是一个小网站。它是互联网上最大的内容网站之一。特别是因为他们提供了他们的全部档案,我认为这是免费/开放的,至少在英国是这样。这是超过75年的内容