hgproxy配置黑名單,解決主備讀取不一致的問題
1、問題描述
高并發(fā)情況下,數(shù)據(jù)讀取不一致。
2、問題原因
集群中使用了異步流復(fù)制,數(shù)據(jù)同步延遲造成。
3、解決方案
設(shè)置黑名單,將特定sql全部發(fā)往主節(jié)點查詢。下為參考步驟。
(1)配置參數(shù)
配置文件/opt/hgproxy/etc/proxy1.conf中,如下參數(shù)設(shè)置黑白名單
[BlackList] |
black_regex_token_list
當(dāng)希望特定的 SQL 發(fā)往主節(jié)點時,可以使用黑名單正則匹配。正則黑名單匹配成功發(fā)往主節(jié)點。配置時以分號分隔。配置時和下面white_regex_token_list 沖突時,以黑名單為準(zhǔn)。默認(rèn)值為空
white_regex_token_list
當(dāng)希望特定的 SQL 發(fā)往備節(jié)點時,可以使用白名單正則匹配。正則白名單匹配成功發(fā)往備節(jié)點。配置時,以分號分隔。默認(rèn)值為空
object_relationship_list
該參數(shù)配置文件絕對路徑。該文件的功能是配置函數(shù)與表關(guān)系,表與表關(guān)系的文件路徑。默認(rèn)為“/opt/HighGo/tools/hgproxy/etc/object_relationship_list.json”
(2) 重啟服務(wù)生效
systemctl restart hgproxy |