记得上下班打卡 | git大法好,push需谨慎

Commit 57011822 authored by jiangxiulong's avatar jiangxiulong

JxlMathUtil

parent 78a26b88
//package com.liquidnet.service;
//
//import com.liquidnet.common.cache.redis.config.RedisConfig;
//import lombok.extern.slf4j.Slf4j;
//
///**
// * @author AnJiabin <anjiabin@zhengzai.tv>
// * @version V1.0
// * @Description: TODO
// * @class: MathUtil
// * @Package com.liquidnet.common.cache.redis.util
// * @Copyright: LightNet @ Copyright (c) 2021
// * @date 2021/8/10 18:03
// */
//@Slf4j
//public class JxlMathUtil {
// public static int getIndex(String key){
// log.debug("MathUtil.getIndex key:{} hashcode:{}",key,key.hashCode());
// int defaultDb = RedisConfig.defaultDb;
// int totalDbs = RedisConfig.totalDbs;
//// totalDbs = 256;
// if(totalDbs==1){
// log.info("only one db : {} ",defaultDb);
// return defaultDb;
// }
// int mod = 250;
// if(totalDbs > 1 && totalDbs < 256){
// if(totalDbs==16){
// mod = 15;
// }else{
// mod = totalDbs - 1;
// }
// }
// long value = Long.valueOf(key.hashCode());
// int hash=(int)(value ^ (value >>> 32));
// int index=hash % mod;
// log.debug("MathUtil.getIndex key:{} index:{}",key,index);
// return index;
// }
//
// public static void main(String[] args) {
// /*RedisConfig redisConfig = new RedisConfig();
// redisConfig.getRedisTemplateByDb(MathUtil.getIndex("1"));*/
package com.liquidnet.service;
import com.liquidnet.common.cache.redis.config.RedisConfig;
import lombok.extern.slf4j.Slf4j;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
* @version V1.0
* @Description: TODO
* @class: MathUtil
* @Package com.liquidnet.common.cache.redis.util
* @Copyright: LightNet @ Copyright (c) 2021
* @date 2021/8/10 18:03
*/
@Slf4j
public class JxlMathUtil {
public static int getIndex(String key){
log.debug("MathUtil.getIndex key:{} hashcode:{}",key,key.hashCode());
int defaultDb = 0;
int totalDbs = 256;
// totalDbs = 256;
if(totalDbs==1){
log.info("only one db : {} ",defaultDb);
return defaultDb;
}
int mod = 250;
if(totalDbs > 1 && totalDbs < 256){
if(totalDbs==16){
mod = 15;
}else{
mod = totalDbs - 1;
}
}
long value = Long.valueOf(key.hashCode());
int hash=(int)(value ^ (value >>> 32));
int index=hash % mod;
log.debug("MathUtil.getIndex key:{} index:{}",key,index);
return index;
}
public static void main(String[] args) {
/*RedisConfig redisConfig = new RedisConfig();
redisConfig.getRedisTemplateByDb(MathUtil.getIndex("1"));*/
// getIndex("kylin:performances:id:296290722991104003684701");
//// getIndex("kylin:order:coupon:id:397983761946132487870836");
//// getIndex("sweet:integralActivity:list");
//// getIndex("kylin:order:id:325244198036357120519956");
//// getIndex("kylin:performances:roadShowId:5936345");
//// getIndex("kylin:performances:roadShowId:570");
//// getIndex("kylin:order:refund:address");
//// getIndex("basicServices:upushList:IOS");
//// getIndex("basicServices:upushList:Android");
//// getIndex("basicServices:zhengzaiAppVersionsAndroid");
//// getIndex("basicServices:zhengzaiAppVersionsIos");
//// getIndex("basicServices:zhengzaiCheckAppVersionsAndroid");
//// getIndex("basicServices:zhengzaiCheckAppVersionsIos");
//// getIndex("kylin:performances_inventory:ticket:id:245075780722810880782444:surplusGeneral");
//// getIndex("kylin:performances:notice");
// }
//}
\ No newline at end of file
getIndex("sweet:integralActivity:prizeNum:activityId:499142611246284803622253:prizeId:499142823268352009440982");
// getIndex("kylin:order:coupon:id:397983761946132487870836");
// getIndex("sweet:integralActivity:list");
// getIndex("kylin:order:id:325244198036357120519956");
// getIndex("kylin:performances:roadShowId:5936345");
// getIndex("kylin:performances:roadShowId:570");
// getIndex("kylin:order:refund:address");
// getIndex("basicServices:upushList:IOS");
// getIndex("basicServices:upushList:Android");
// getIndex("basicServices:zhengzaiAppVersionsAndroid");
// getIndex("basicServices:zhengzaiAppVersionsIos");
// getIndex("basicServices:zhengzaiCheckAppVersionsAndroid");
// getIndex("basicServices:zhengzaiCheckAppVersionsIos");
// getIndex("kylin:performances_inventory:ticket:id:245075780722810880782444:surplusGeneral");
// getIndex("kylin:performances:notice");
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment