Rails有乐观锁悲观锁,但是悲观锁它不支持整个table的锁啊
好吧,那就SQL吧:
在Console下试了试,不同进程,可以锁!同步了!
但是,在fastCGI下就是锁不住!
搞一个全局变量,很可行!
命名lock很好很强大,MySQL里的全局变量啊~,比Lock整个table灵活且性能强大多了
好吧,那就SQL吧:
ActiveRecord::Base.connection.execute("LOCK TABLE XXX WRITE")
ActiveRecord::Base.connection.execute("UNLOCK TABLES")
在Console下试了试,不同进程,可以锁!同步了!
但是,在fastCGI下就是锁不住!
搞一个全局变量,很可行!
ActiveRecord::Base.connection.execute("select get_lock('lock_xxx', 100)")
ActiveRecord::Base.connection.execute("select release_lock('lock_xxx')")
命名lock很好很强大,MySQL里的全局变量啊~,比Lock整个table灵活且性能强大多了