网站首页 mysql技术
分布式网站登陆算法
发布时间:2016-05-17 01:03查看次数:13232
应用场景:
某大型网站用户有N张表 用户登陆的时间如何确定用户登陆的那张表
例如: user_1.user_2.user_3...user_10
方案解决思路:
hash (哈希)用户名 ABS取整 %(取模) (表数量)10
理论知识:
哈希用户名字后或者一个整数型数字
数字与表数量取模 获得一个小数
然后取整 即可
function get_user_table_name($username, $prefix = 'user_', $count = 10){
return $prefix . abs(crc32($username)) % $count;
}
关键字词:分布式网站登陆算法