分布式是如何實現的?
分布式鎖三種實現方式:
1. 基于數據庫實現分布式鎖;
2. 基于緩存(Redis等)實現分布式鎖;
3. 基于Zookeeper實現分布式鎖; 基于數據庫實現分布式鎖
1. 悲觀鎖 利用select … where … for update 排他鎖 注意: 其他附加功能與實現一基本一致,這里需要注意的是“where name=lock ”,name字段必須要走索引,否則會鎖表。有些情況下,比如表不大,mysql優化器會不走這個索引,導致鎖表問題。
2. 樂觀鎖 所謂樂觀鎖與前邊最大區別在于基于CAS思想,是不具有互斥性,不會產生鎖等待而消耗資源,操作過程中認為不存在并發沖突,只有upd