Commit 70482c93 by 杨树贤

temp

parent a31bb4d0
/go.sum
/.idea/
gowatch.yml
*.exe
*.exe~
cmd.exe~
/cmd/logs/
/cmd/*.exe~
/cmd/logs
/bat/logs/
/conf/prod/*.ini
/go.mod
/logs
/mylogs
/doc/test
/vm.sh
/cmd/http
/doc/spuTest
/doc/test3
/.history
/.vscode
......@@ -59,6 +59,10 @@ func CommonController(ctx *gin.Context) map[string]interface{} {
zyGoodsId := make([]string, 0, goodsSliceCount)
lyGoodsId := make([]string, 0, goodsSliceCount)
for _, goodsId := range goodsIdArr {
//if len(goodsIdArr) > 100 {
// common.Output(ctx, 1001, "查询型号ID不得超过100个", "")
// return nil
//}
if goodsId == "" {
continue
}
......
......@@ -2,9 +2,10 @@ package gredis
import (
"fmt"
"github.com/gomodule/redigo/redis"
"go_sku_server/pkg/config"
"time"
"github.com/gomodule/redigo/redis"
)
type ichuntRedis struct {
......@@ -32,7 +33,7 @@ func Setup() (err error) {
return nil
}
//格式化成字符串
// 格式化成字符串
func String(a interface{}, err error) (string, error) {
return redis.String(a, err)
}
......@@ -44,7 +45,10 @@ func getConn(writeHost, password string, maxIdle, maxActive int) (pool *redis.Po
MaxIdle: maxIdle,
MaxActive: maxActive,
Dial: func() (redis.Conn, error) {
c, err := redis.Dial("tcp", writeHost)
c, err := redis.Dial("tcp", writeHost,
redis.DialConnectTimeout(2*time.Second),
redis.DialReadTimeout(2*time.Second),
redis.DialWriteTimeout(2*time.Second))
if err != nil {
return nil, err
}
......@@ -70,8 +74,9 @@ func getConn(writeHost, password string, maxIdle, maxActive int) (pool *redis.Po
@param hkey string 集合键值,如sku
@param targetIds string 查询的id 切片
eg:
redisConn := gredis.Conn("search_r")
skuArr := gredis.HgetPi(&redisConn,"Self_SelfGoods",[]string{"1001","10005"})
redisConn := gredis.Conn("search_r")
skuArr := gredis.HgetPi(&redisConn,"Self_SelfGoods",[]string{"1001","10005"})
*/
func Hmget(redisCon string, hkey string, targetIds []string) map[string]string {
if len(targetIds) == 0 {
......@@ -86,7 +91,8 @@ func Hmget(redisCon string, hkey string, targetIds []string) map[string]string {
goods_id := targetIds[0]
info, err := String(redisConn.Do("HGET", hkey, goods_id))
if err != nil && err != redis.ErrNil {
fmt.Print("连接redis错误991:", err)
fmt.Printf("redis HGET error for key %s, field %s: %v\n", hkey, goods_id, err)
return nil
}
if info == "" {
skuArr[goods_id] = ""
......@@ -102,9 +108,14 @@ func Hmget(redisCon string, hkey string, targetIds []string) map[string]string {
}
res1, err1 := redisConn.Do("hmget", param...)
reply, _ := redis.Strings(res1, err1)
if err1 != nil {
fmt.Println(err1)
fmt.Printf("redis HMGET error for key %s: %v\n", hkey, err1)
return nil
}
reply, err := redis.Strings(res1, err1)
if err != nil {
fmt.Printf("redis Strings conversion error after HMGET for key %s: %v\n", hkey, err)
return nil
}
for k, goodsInfo := range reply {
......@@ -120,8 +131,9 @@ func Hmget(redisCon string, hkey string, targetIds []string) map[string]string {
@param hkey string 集合键值,如sku
@param targetIds string 查询的id 切片
eg:
redisConn := gredis.Conn("search_r")
skuArr := gredis.HgetPi(&redisConn,"Self_SelfGoods",[]string{"1001","10005"})
redisConn := gredis.Conn("search_r")
skuArr := gredis.HgetPi(&redisConn,"Self_SelfGoods",[]string{"1001","10005"})
*/
func HgetPi(redisCon string, hkey string, targetIds []string) map[string]string {
redisConn := Conn(redisCon)
......@@ -131,8 +143,9 @@ func HgetPi(redisCon string, hkey string, targetIds []string) map[string]string
if len(targetIds) == 1 {
oneId := targetIds[0]
info, err := String(redisConn.Do("HGET", hkey, oneId))
if err != nil {
fmt.Print(err)
if err != nil && err != redis.ErrNil {
fmt.Printf("redis HGET error for key %s, field %s: %v\n", hkey, oneId, err)
return nil
}
if info == "" {
skuArr[oneId] = ""
......@@ -148,7 +161,11 @@ func HgetPi(redisCon string, hkey string, targetIds []string) map[string]string
redisConn.Flush()
for _, goods_id := range targetIds {
info, _ := redisConn.Receive()
info, err := redisConn.Receive()
if err != nil {
fmt.Printf("redis Receive error for key %s: %v\n", hkey, err)
return nil
}
if info == nil {
skuArr[goods_id] = ""
continue
......@@ -164,8 +181,9 @@ func HgetPi(redisCon string, hkey string, targetIds []string) map[string]string
@param hkey string 集合键值,如sku
@param targetIds string 查询的id 切片
eg:
redisConn := gredis.Conn("search_r")
skuArr := gredis.HgetPi(&redisConn,"Self_SelfGoods",[]string{"1001","10005"})
redisConn := gredis.Conn("search_r")
skuArr := gredis.HgetPi(&redisConn,"Self_SelfGoods",[]string{"1001","10005"})
*/
func HgetPi2(redisCon string, hkey string, targetIds []string) map[string]string {
redisConn := Conn(redisCon)
......@@ -174,8 +192,9 @@ func HgetPi2(redisCon string, hkey string, targetIds []string) map[string]string
skuArr := make(map[string]string, 0)
for _, goods_id := range targetIds {
info, err := String(redisConn.Do("HGET", hkey, goods_id))
if err != nil {
fmt.Print("连接redis错误991:", err)
if err != nil && err != redis.ErrNil {
fmt.Printf("redis HGET error in HgetPi2 for key %s, field %s: %v\n", hkey, goods_id, err)
return nil
}
if info == "" {
skuArr[goods_id] = ""
......
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 sign in to comment