-
Notifications
You must be signed in to change notification settings - Fork 350
common cluster
bobohume edited this page Feb 19, 2021
·
2 revisions
包含服发现,分布式雪花uuid,集群管理
其中et,etv3分别支持etcd v3和v1
service为注册服务,master为监听服务,订阅发布模式,service发布,master订阅
snowfalke为分布式机器码workid,支持etcd以及redis做 10bit位的机器码,雪花算法参考
- +-----------------------------------------------+------------+---------------+
- | timestamp(ms) | workerid | sequence |
- +-----------------------------------------------+------------+---------------+
- | 0000000000 0000000000 0000000000 0000000000 0 | 0000000000 | 0000000000 00 |
- +-----------------------------------------------+------------+---------------+
-
- 41位时间截(毫秒级),注意这是时间截的差值(当前时间截 - 开始时间截)。可以使用约70年: (1L << 41) / (1000L * 60 * 60 * 24 * 365) = 69
-
- 10位数据机器位,可以部署在1024个节点
-
- 12位序列,毫秒内的计数,同一机器,同一时间截并发4096个序号
cluster集群client,clusterserver为cluster client管理者,方便分布式socket书写,socket全部用集群cluster替代