我有一个伙伴运行一个网络应用程序,供人们列出待售汽车。有几千个客户在使用它,每个客户在数据库中都有数百甚至数千行(有些已经使用了 5 年,每月销售数百辆汽车,每次销售有 10 行(评论、消息、 ETC))。他一直在一台具有 20GB 或 RAM 和几个处理器的物理服务器中的一个 SQL Server 数据库中运行这个系统,没有任何问题。这是某种奇迹吗?
就像大多数程序员一样,我不是 DBA,只能靠 ORM 等方式勉强度日。在我所见的任何地方,人们都在谈论需要为 Web 应用程序的大用户分片或获得单独的数据库服务器。为什么是这样?拥有一个包含很多或行的大型数据库真的那么低效吗?我应该计划使用 Cassandra 还是其他东西,或者我可以依靠 Postgres 很好地扩展?