有沒有同志在用mongodb做讀寫分離?
php擴(kuò)展如何實現(xiàn)mongodb讀寫分離?
閉關(guān)修行中......
可以做一層orm,比如orm中添加select,insert,update三個方法,分別指向不同的服務(wù)器,這樣就可以簡單實現(xiàn)讀取分離,可以參考thinkphp的讀取分離機(jī)制
mongodb有一個地方有點(diǎn)坑,在mapreduce的查詢中,如果有out結(jié)果到新集合這個就不知道怎么處理了。
復(fù)制集的一主多從可以通過指定read_preferences實現(xiàn)寫主讀從.
擴(kuò)展直接指定read_preferences即可.
mongodb 不建議使用 master/slave 方式做讀寫分離,所以最好別這樣做,使用 replica sets 吧。
Replica sets replace master-slave replication for most use cases. If possible, use replica sets rather than master-slave replication for all new production deployments. This documentation remains to support legacy deployments and for archival purposes only.
如果要優(yōu)化讀寫性能應(yīng)該嘗試使用 auto-sharding,使用 mongos
作為 db proxy,動態(tài)的平衡各個數(shù)據(jù)庫的壓力。