关于client_id会不会溢出的问题

Ylh

client_id 会不会溢出的问题。在连接建立之后client_id是自增的,并且旧连接断开之后新连接似乎不会复用没有被占用的client_id,那么假设连接数足够多(包括曾经连接又断开的),client_id是不是会有溢出的可能?如果溢出之后,连接足够多的情况下那么会覆盖掉正在使用的client_id(比较极端...)。(PHP中整型为32位或64位,在框架里有一些地方将client_id作为数组键,所以就算自动转成了浮点还是会在这转回整型) 毕竟鸟叔的视频都让Youtube播放次数溢出了....还是说框架里有相关防止溢出的机制?还请教。

2758 3 0
3个回答

walkor

client_id 从1自增到21亿,大于21亿后又从1开始递增,不会溢出。

  • Ylh 2015-07-22

    是的,那么是不是可能有这样一种情况,client_id最小的那个连接一直没有断过,在所有总连接个数2^31的时候,再来一个连接请求此时分配的client_id会不会跟最早的那个冲突?

Ylh

是的,那么是不是可能有这样一种情况,client_id最小的那个连接一直没有断过,在所有总连接个数2^31的时候,再来一个连接请求此时分配的client_id会不会跟最早的那个冲突?

  • 暂无评论
walkor

假如每秒产生10个连接,循环一次也要至少6年的时间

  • 暂无评论
年代过于久远,无法发表回答
🔝