APP開發(fā)公司淺析什么是客戶端名片,客戶端分片是把分片的邏輯放在Redis客戶端實現(xiàn),通過Redis客戶端預先定義好的路由規(guī)則,把對Key的訪問轉發(fā)到不同的Redis的實例中,最后把返回結果匯集。
客戶端分片的好處是所有的邏輯都是可控,不依賴于第三方分布式中間件。開發(fā)人員清楚怎么實現(xiàn)分片、路由的規(guī)則,不用擔心踩坑??蛻舳朔制姆桨赣邢旅娴膲奶帯?/span>
1.這是一種靜態(tài)的分片方案,需要增加或者減少Redis實例的數(shù)量,都需要手工調整分片的程序。
2.可運維性差,集群的數(shù)據(jù)出了任何問題都需要運維人員(查看Redis實例的部分)和開發(fā)人員(查看客戶端的分片邏輯部分)一起合作,延遲了解決問題的速度,增加了跨部門溝通的成本。
3.在不同的客戶端程序中,維護相同的分片邏輯成本巨大。例如,系統(tǒng)中有兩套業(yè)務系統(tǒng)共用一套Redis集群,一套業(yè)務系統(tǒng)用Java實現(xiàn),另一套業(yè)務系統(tǒng)用PHP實現(xiàn)。為了保證分片邏輯的一致性,在Java客戶端中實現(xiàn)的分片邏輯也需要在PHP客戶端實現(xiàn)一次。把相同的邏輯在不同的系統(tǒng)中分別實現(xiàn),這種設計本來就非常糟糕,而且需要耗費巨大的開發(fā)成本保證兩套業(yè)務系統(tǒng)分片邏輯的一致性。深圳APP開發(fā)公司本文關于“APP開發(fā)公司淺析什么是客戶端名片”的知識就介紹分享到這里,謝謝關注,博納網絡編輯整理。