【发布时间】:2014-09-04 16:52:34
【问题描述】:
我们正在开发一个售票电子商务系统。我们经常在促销期间遇到大量请求。
我们使用 couchdb 进行缓存,并使用 SQL 服务器数据库作为我们的数据存储。
我们正在处理的一种情况是,如果某个活动的所有门票都已售出,我们会希望阻止任何用户购买它们。
为了让我们能够做到这一点,我们必须在每次销售时查询数据库,这太糟糕了。
我的想法是最初查询某个活动的门票数量并将其存储在 couchdb 中,并且在每次销售时,我们会减少 couchdb 记录的可用门票。当 couchdb 记录为零时,我们会更新数据库并阻止任何用户购买该活动的任何门票。
您能否验证我的想法,或者如果您有更好的解决方案,请详细说明。
谢谢
【问题讨论】:
-
为什么在从整数中减去 1 并将其持久存储时,couchdb 会比 mssql 更有效?
-
@IfLoop 我只是询问是否是,以及处理这种情况的最佳方法是什么,如果您有其他方法,请随时发表评论
-
认为更适合这样的场景是例如Redis 或 Aerospike,两者都可以选择在给定特定键的情况下增加值。
标签: couchdb