一种游戏玩家ID方案

1. 方案ID为64bits

    ID = serverId(2Byte)  +  serverStartTime(4Bytes) + indexId(2Bytes)

2. 说明

    serverId:  服务器ID, 不重复, 范围 1~65535

    serverStartTime: 启动时间(秒),  对于追求完美的人, 为了防止这个数重复, 可以规定服务器启动1秒之后,再开始接受ID创建

    indexId: 顺序号 1~N,  从数据分配的范围看, 可以接受65536个, 这个数确实太小了, 但是从另外一个角度看,

    超过这个数, 即是意味着占用了"时间域", 这个时候, 不可能1秒还没过玩吧.

    所以这个65536可以和时间域联合起来看作 "每秒65536"

    对于追求完美的, 可以真的在代码里确保1秒只分配65536个ID

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值