讀寫分離: 爲保證數據庫數據的一致性,咱們要求全部對於數據庫的更新操做都是針對主數據庫的,可是讀操做是能夠針對從數據庫來進行。大多數站點的數據庫讀操做比寫操做更加密集,並且查詢條件相對複雜,數據庫的大部分性能消耗在查詢操做上了。數據庫
主從複製數據是異步完成的,這就致使主從數據庫中的數據有必定的延遲,在讀寫分離的設計中必需要考慮這一點。以博客爲例,用戶登陸後發表了一篇文章,他須要立刻看到本身的文章,可是對於其它用戶來說能夠容許延遲一段時間(1分鐘/5分鐘/30分鐘),不會形成什麼問題。這時對於當前用戶就須要讀主數據庫,對於其餘訪問量更大的外部用戶就能夠讀從數據庫。 緩存
所以:異步
個人想法是要使用讀寫分離來實現系統吞吐量的提高就要從業務上想辦法下降一致性的要求。分佈式
對必需要有一致性的功能是沒法進行讀寫分離的,能夠採用多庫不區分讀寫以及memcache緩存技術來實現。性能