我最近编写了一个使用 couchdb 的网络应用程序。我喜欢couchdb,它适合应用程序 - 它有很多动态行为,只需直接从couchdb中提取JSON。能够通过浏览器上传图像很不错,可以轻松调整文档数据。由于应用程序是couchapp,复制也使部署变得轻而易举,部署所需的只是复制到生产服务器。

然而,对于我正在考虑的新应用程序(想想博客类型的东西),我想要良好的性能,这是我认为couchdb不强的一个领域。该应用程序将主要面向阅读(我估计90%读到10%写道)。

哪个数据存储在单个服务器方案中提供最佳性能?我很想听听人们在这方面的经历......

有帮助吗?

解决方案

如果它主要是读取性能,您会担心为什么不将清漆代理放入在couchdb的前面?我在varnish中使用了几个自定义配置,告诉它不要实际查询couchdb缓存对象,尽管couchdb指定必须验证,然后在_changes上有一个带有活动HTTP GET的脚本,它使用来自_changes的数据以显式清除已更改清漆中的条目。

作为加号清漆,您可以进行URL重写,这是我需要的。大多数其他解决方案都涉及运行像apache或ngnix之类的东西来重写couchdb的URL。

其他提示

我认为 MongoDB 开始看起来像无人机的前沿性能明智数据存储。

我们目前正在评估这个过程,用于存储范围从10Kb到50Mb的二进制对象,即使在适度的硬件上,我也对它的性能印象非常深刻。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top