【问题标题】:Cloud vs NoSQL for scalable web applications [closed]用于可扩展 Web 应用程序的云与 NoSQL [关闭]
【发布时间】:2026-01-18 19:30:02
【问题描述】:

我想对以下内容有一些基本的了解。 为了构建可扩展的 Web 应用程序,他们有哪些选择?

以下有什么区别 1) 简单地使用 noSQL 数据库(如 Cassandra)来实现可扩展性 2) 使用云服务(如 Azure、Openstack)实现可扩展性 3) 在云平台之上使用 noSQL 数据库来实现可扩展性

哪种方法具有极强的可扩展性? 如今,其中哪些是组织通常首选的

由于我是新手,请以简单的方式解释。

【问题讨论】:

    标签: azure cassandra cloud scalability nosql


    【解决方案1】:

    像 cassandra 这样的数据库在数据库层为您提供了可扩展性,但仍然没有解决应用程序层问题 - 您可以在一个集群中拥有一千个 cassandra 节点,每秒处理数百万次写入,但要支持该流量,您还需要数十或数百个实际与客户端通信的应用程序服务器。

    这就是 AWS / Azure / Openstack 等技术发挥作用的地方 - 让您能够快速轻松地创建新的网络服务器/应用程序服务器(在 AWS 和 Azure 的情况下,在租用的硬件上,因此您无需支付费用)物理机、数据中心空间和专用带宽,您只需为使用量付费。

    人们将 Cassandra 等 NoSQL 数据库组合在 AWS/Azure 等云之上是很常见的,因为随着需求的增长,他们可以启动更多系统,而无需进行资本支出(购买服务器),并且他们可以关闭节点作为需求减少(例如,如果您在超级碗期间投放广告,您可以在周六打开 1000 台机器,投放超级碗广告,提供由此产生的流量,然后在不再需要时关闭 800 台机器周二)。

    【讨论】:

    • 非常感谢您的详细解释。我明白其中的逻辑。但是,仅通过扩展云架构(不扩展数据库)来扩展 Web 应用程序怎么样?据我从您的解释中了解到,我们不能仅扩展云架构,因为数据库将成为瓶颈,反之亦然。我说的对吗?