我正在设计一个新的Web项目,在研究了一些旨在实现可伸缩性的选项之后,我想出了两个数据库解决方案:
我不相信当前共享主机上的MySQL服务器,因为它经常出现故障(我在其他主机上也遇到了MySQL问题)。出于同样的原因,我不想使用postgres。
SQLite的优点:
MongoDB的优点:
我想帮助做出决定(也许可以考虑第三种选择)。当写入和读取操作正在增长时哪一个更好?
我将使用Ruby。
答案 0 :(得分:11)
SQLite方法的一个主要风险是,随着您的扩展需求增加,您将无法(轻松)部署在多个应用程序服务器上。您可以将用户划分为单独的服务器,但如果该服务器出现故障,您将有一些无法访问其数据的用户子集。
使用MongoDB(或任何其他集中服务)可以缓解此问题,因为您的Web服务器是无状态的 - 可以随时添加或删除它们以适应Web负载,而无需担心哪些数据存在于何处。