RethinkDB - mindpin/docs GitHub Wiki

介绍

http://blog.nosqlfan.com/html/1824.html
http://1ke.co/course/351

安装

http://www.rethinkdb.com/docs/install/
咱们团队大部分成员使用的 debian 虚拟机,所以看 debian 下如何安装就可以了

启动

http://www.rethinkdb.com/docs/start-a-server

# 启动
rethinkdb

# 如果从另外的机器访问,则
rethinkdb --bind all

# 然后从 ip:8080 访问 web 管理界面

或者作为系统服务 http://www.rethinkdb.com/docs/start-on-startup/

结合 rails 使用

http://www.rethinkdb.com/docs/rails/


书销售DEMO

https://github.com/mindpin/try-rethinkdb/issues/2

方案

因为 rethinkdb 是只支持单表事务,所以设计的交易方案中有一个日志表来进行总体事务的控制 如下

四个表说明
  交易日志(交易前,记录三个表要进行的变化,记录增量比较合理)
  书籍数量
  个人账户
  订单状态

流程
  begin
    交易日志(状态:正在交易)
    书籍数量(锁同步)
    个人账户(锁同步)
    订单状态(锁同步)
    交易日志(状态:交易完成)
  rescue
    交易日志(状态:正在回滚)
    根据交易日志 回滚 书籍数量(锁同步)
    根据交易日志 回滚 个人账户(锁同步)
    根据交易日志 回滚 订单状态(锁同步)
    交易日志(状态:回滚完成)
  end