package main import ( "encoding/json" "fmt" ) const TOKENJD ="AbopJDAbopdu800820mcspcq==" const TOKENBAIDU ="AbopJDAbopdu800820mcspcq==" const INTERFACEC1 = "GetSkuListByClass" const INTERFACEID2 = "GetSkuListFull" const INTERFACEID3 = "GetSkuListPrice" var( jdToken=TOKENJD baiduToken=TOKENBAIDU GetSkuListByClass ="GetSkuListByClass" GetSkuListFull ="GetSkuListFull" GetSkuListPrice ="GetSkuListPrice" GetClassList ="GetClassList" GetSkuListImages = "GetSkuListImages" //redis 表key openWhiteList ="openWhiteList"//白名单 openBlackList ="openBlackList"//白名单 openTokenBusinessList="openTokenBusinessList"//商家列表 openBusinessInterface="openBusinessInterface"//商家接口配置 /** 计数key 比如 flowUse_AbopJDAbopdu800820mcspcq==_getSkuListById_min 组成说明:flowUse_{token}_{interfaceName}_min 如果是天 后面就是day */ /** 锁key 比如 flow_lock_flowUse_AbopJDAbopdu800820mcspcq==_getSkuListById_min flow_lock_计数key */ ) func main() { generate() } func generate() { //whiteIp() //businessList() businessInterfaceList() newWhiteBlack() newBusinessList() } //白名单配置 func whiteIp() { redisKey:=openWhiteList /*whiteList:=[]string{ "127.0.0.1", "127.0.0.2", "192.168.2.72", "::1", "192.168.2.241", "192.168.1.1", "192.168.2.129", }*/ //线上配置 whiteList:=[]string{ "127.0.0.1", "::1", "119.123.78.115", "172.18.137.41", "172.18.137.42", "192.168.2.129", "19.123.78.115", "222.92.21.99", "192.168.2.72", "::1", "119.123.78.14", } /*whiteList:=[]string{ "172.18.137.41", "::1", }*/ fmt.Println("白名单配置:"+redisKey) redisStringSet(redisKey,whiteList) } //商家列表 func businessList() { redisKey:=openTokenBusinessList businessList:=[]string{ jdToken,//京东 //baiduToken,//百度 } fmt.Println("商家列表:key:"+redisKey) redisStringSet(redisKey,businessList) } func newBusinessList() { config:=map[string]string{ openTokenBusinessList:jdToken, } fmt.Println("新商家列表配置:") redisStringSadd(config) } func newWhiteBlack() { jdWhiteList:=jdToken+"_"+openWhiteList jdBlackList:=jdToken+"_"+openBlackList //180.163.220.66 config:=map[string]string{ jdWhiteList:"192.168.2.72 222.92.21.99 192.168.2.129 ::1 119.123.79.225 119.123.78.14", jdBlackList:"::1 ", } fmt.Println("新白名单配置:") redisStringSadd(config) } //商家接口配置 func businessInterfaceList() { redisKey:=openBusinessInterface config:=map[string]interface{}{ //获取sku列表(获取价格相关字段) 5,10000000 //获取sku列表(根据class_id查询) 500,10000000 //获取sku列表(full-显示所有字段) 50,10000000 jdToken+"_"+GetSkuListByClass: map[string]interface{}{ "dayMaxNum":1000000, "minMaxNum":300, "totalMaxNum":10000, }, jdToken+"_"+GetSkuListFull: map[string]interface{}{ "dayMaxNum":1000000, "minMaxNum":300, "totalMaxNum":10000, }, jdToken+"_"+GetSkuListPrice: map[string]interface{}{ "dayMaxNum":1000000, "minMaxNum":300, "totalMaxNum":10000, }, jdToken+"_"+GetClassList: map[string]interface{}{ "dayMaxNum":1000000, "minMaxNum":300, "totalMaxNum":10000, }, jdToken+"_"+GetSkuListImages: map[string]interface{}{ "dayMaxNum":1000000, "minMaxNum":300, "totalMaxNum":10000, }, /*baiduToken+"_"+getSkuListByClass: map[string]interface{}{ "dayMaxNum":100, "minMaxNum":500, "totalMaxNum":10000, },*/ } fmt.Println("商家接口配置:key:"+openBusinessInterface) redisHashSet(redisKey,config) } func redisHashSet(key string,values map[string]interface{}) { for hashk,valueOne:=range values{ b,_:=json.Marshal(valueOne) b,_=json.Marshal(string(b)) hsetStr:="Hset "+key+" "+string(hashk)+" "+string(b) fmt.Println(hsetStr) //fmt.Println("对应计时的min key\nflowUse_"+hashk+"_min") //fmt.Println("对应计时的day key\nflowUse_"+hashk+"_day") } } func redisStringSet(key string,sliceString []string) { b,_:=json.Marshal(sliceString) b,_=json.Marshal(string(b)) setStr:="set "+key+" "+string(b) fmt.Println(setStr) } func redisStringSadd(config map[string]string) { for hashk,valueOne:=range config{ SaddStr:="SADD "+hashk+" "+valueOne fmt.Println(SaddStr) //fmt.Println("对应计时的min key\nflowUse_"+hashk+"_min") //fmt.Println("对应计时的day key\nflowUse_"+hashk+"_day") } }