基于一致性哈希的缓存模式
- Lingua principale
- Go
- Stelle
- 13.2k
- Fork
- 2.7k
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
列个TODO,等有时间了搞一下。
Codis设计之初是把redis当初数据库考虑的,而非单纯的缓存,所以是CP的系统。但是很多redis场景还是把它当初缓存,容忍数据不一致但需要可用性,并且很多时候主从显得比较浪费。所以可以类似Cassandra,在slot级别做一致性哈希,每个key所对应的slot都落在一致性哈希的环上的1-N个节点(取决于配置了几备份)。在手动增减节点时可以先进行迁移操作,以保证命中率不降;再有节点突然挂掉的时候自动failover到下一个节点,以保证可用性不降、命中率只下降1/n(n为实例个数)。
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
L'issue non indica file, test o punti di ingresso; inizia individuando i percorsi di Codis per l'allocazione degli slot, la migrazione dei nodi e il failover. Chiarisci il numero configurabile di repliche e il comportamento in caso di errore descritto nella proposta, quindi definisci test mirati per la migrazione e il failover prima dell'implementazione.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- go, redis
- Ambito
- backend, distributed-systems
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 20/100