时长:大小12.77M
作者回复: 可以暂时记录上次发好的时间,然后和这次的时间比较
作者回复: 应该可行
作者回复: 性能在单实例单核可以达到2亿万次每秒 发号器一般是改的redis
作者回复: 其实很难预估数据量,某一天有活动咋办?不同的起始值也可,只是增加人工成本,增加了库表咋办?忘了设置咋办?
作者回复: 是的,如果是独立部署的话就可以保证了
作者回复: 会发这么多号吗……
作者回复: 首先,服务器的时钟一般是对时的 其次,如果是单独部署的发号器,没有机器ID是可以保证单调递增的
作者回复: 容器ID太长了。。。 其实引入zk也还好,对于zk是弱依赖,只是启动的时候拉一下机器ID
作者回复: 容器ID太长了吧,比较占发号器的位数
作者回复: 在没到69年的时候增加时间的位数……
作者回复: 👍
作者回复: 是的 不过像redis那样单线程处理就好了
作者回复: ID在同一时间是可以重复的,所以每次重启选择一个可用的,或者一台机器用一个固定的就好了
作者回复: 标准实现是的
作者回复: 这样要对每一个库的offset都要维护,你要是分了1000张表,就要维护1000个offset
作者回复: 是的,没错
作者回复: 我想是通过记录上一次发号的时间戳,如果这次的时间戳比上次的小,就认为是回拨,拒绝发号
作者回复: 额 从1发号还是从0发号随你