func NewRedis(redisAddress []string, clientConfig map[string]string) *RedisCache {
	ring := goRedis.NewRing(&goRedis.RingOptions{
		Addrs: parseAddress(redisAddress),
	})
	cache := redisCache.New(&redisCache.Options{
		Redis:      ring,
		LocalCache: redisCache.NewTinyLFU(10, time.Minute),
	})
	if clientConfig != nil {
		for key, value := range clientConfig {
			ring.ConfigSet(context.Background(), key, value)
		}
	}
	return &RedisCache{cache}
}
NewRedis create connection to redis and update it config from clientConfig map
package cache
import (
	"context"
	"strings"
	"time"
	"github.com/aldor007/mort/pkg/monitoring"
	"github.com/aldor007/mort/pkg/object"
	"github.com/aldor007/mort/pkg/response"
	redisCache "github.com/go-redis/cache/v8"
	goRedis "github.com/go-redis/redis/v8"
	"github.com/vmihailenco/msgpack"
)
func parseAddress(addrs []string) map[string]string {
	mp := make(map[string]string, len(addrs))
	for _, addr := range addrs {
		parts := strings.Split(addr, ":")
		mp[parts[0]] = parts[0] + ":" + parts[1]
	}
	return mp
}
type RedisCache struct {
	client *redisCache.Cache
}