Can't init enough connections amount! Only 0 from 10 were initialized. Server: IP:6379

无法初始化足够的连接数量!只有0和10被初始化。

vi redis.conf

注释:#bind 127.0.0.1

protected-mode yes 改成 protected-mode no

可能还是因为配置的连接池不够

我的原因的RedissonConfig配置的不够

package com.guige.core.conf;

import io.netty.channel.nio.NioEventLoopGroup;
import org.redisson.Config;
import org.redisson.Redisson;
import org.redisson.RedissonClient;
import org.redisson.client.codec.Codec;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Component;
import org.springframework.util.ClassUtils; /**
* Created by kl on 2017/09/26.
* redisson 客户端配置
*/
@Component
@Configuration
public class RedissonConfig {
@Value("${spring.redis.host}")
private String host;
@Value("${spring.redis.port}")
private Integer port;
@Value("${spring.redis.password}")
private String password; @Value("${spring.redis.pool.minidle}")
private int connectionMinimumIdleSize = 10;//从节点最小空闲连接数)
private int idleConnectionTimeout = 10000;
private int pingTimeout = 1000;
private int connectTimeout = 10000;
@Value("${spring.redis.timeout}")
private int timeout = 3000;
private int retryAttempts = 3;//命令失败重试次数)
private int retryInterval = 1500; //命令重试发送时间间隔,单位:毫秒)
private int reconnectionTimeout = 3000;//重新连接时间间隔,单位:毫秒)
private int failedAttempts = 3;//执行失败最大次数) private int subscriptionsPerConnection = 5;//单个连接最大订阅数量
private String clientName = null; //名称
@Value("${spring.redis.pool.minidle}")
private int subscriptionConnectionMinimumIdleSize = 1; //从节点发布和订阅连接的最小空闲连接数)
@Value("${spring.redis.pool.maxidle}")
private int subscriptionConnectionPoolSize = 50; //(从节点发布和订阅连接池大小)
@Value("${spring.redis.pool.maxidle}")
private int connectionPoolSize = 64;//连接池大小)
@Value("${spring.redis.database}")
private int database = 0;
private boolean dnsMonitoring = false;//是否启用DNS监测)
private int dnsMonitoringInterval = 5000;//(DNS监测时间间隔,单位:毫秒) private int thread=0; //当前处理核数量 * 2 @Bean(destroyMethod = "shutdown")
RedissonClient redissonClient() throws Exception {
Config config = new Config();
config.useSingleServer().setAddress(host+":"+port)
.setConnectionMinimumIdleSize(connectionMinimumIdleSize)
.setConnectionPoolSize(connectionPoolSize)
.setDatabase(database)
.setDnsMonitoring(dnsMonitoring)
.setDnsMonitoringInterval(dnsMonitoringInterval)
.setSubscriptionConnectionMinimumIdleSize(subscriptionConnectionMinimumIdleSize)
.setSubscriptionConnectionPoolSize(subscriptionConnectionPoolSize)
.setSubscriptionsPerConnection(subscriptionsPerConnection)
.setClientName(clientName)
.setFailedAttempts(failedAttempts)
.setRetryAttempts(retryAttempts)
.setRetryInterval(retryInterval)
.setReconnectionTimeout(reconnectionTimeout)
.setTimeout(timeout)
.setConnectTimeout(connectTimeout)
.setIdleConnectionTimeout(idleConnectionTimeout)
.setPingTimeout(pingTimeout)
.setPassword(password);
Codec codec = (Codec) ClassUtils.forName("org.redisson.codec.JsonJacksonCodec", ClassUtils.getDefaultClassLoader()).newInstance();
config.setCodec(codec);
config.setThreads(thread);
config.setEventLoopGroup(new NioEventLoopGroup());
config.setUseLinuxNativeEpoll(false);
return Redisson.create(config);
}
}
spring:
redis:
database: 1
host: 192.168.1.161
port: 6379
timeout: 50000
password: 201805
pool:
# 连接池最大连接数(使用负值表示没有限制)
maxactive: 64
# 连接池中的最大空闲连接
maxidle: 64
# 连接池最大阻塞等待时间(使用负值表示没有限制)
maxwait: -1
# 连接池中的最小空闲连接
minidle: 1
package com.guige.core.conf;

import com.guige.core.ext.common.redis.MyCacheErrorHandler;
import com.guige.core.ext.common.redis.MyKeyGenerator;
import com.guige.core.ext.common.redis.MyRedisCacheManager;
import com.guige.core.ext.common.redis.MyRedisTemplate;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cache.interceptor.CacheErrorHandler;
import org.springframework.cache.interceptor.KeyGenerator;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.cache.RedisCacheManager;
import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import redis.clients.jedis.JedisPoolConfig; /**
* TODO
*
* @author songaw
* @date 2018/7/17 11:29
*/
@Component
@Configuration
public class RedisConf {
@Value("${spring.redis.database}")
private Integer database; @Value("${spring.redis.host}")
private String host; @Value("${spring.redis.password}")
private String password; @Value("${spring.redis.port}")
private Integer port; @Value("${spring.redis.timeout}")
private Integer timeout; @Value(value = "${spring.redis.expire:300}")
private Integer expiration; @Value("${spring.redis.pool.maxactive}")
private int maxActive; @Value("${spring.redis.pool.minidle}")
private int minIdle; @Value("${spring.redis.pool.maxidle}")
private int maxIdle; @Bean
public JedisPoolConfig jedisPoolConfig(){
JedisPoolConfig poolConfig = new JedisPoolConfig();
poolConfig.setMaxIdle(this.maxIdle);
poolConfig.setMinIdle(this.minIdle);
poolConfig.setTestOnCreate(true);
poolConfig.setTestOnBorrow(true);
poolConfig.setTestOnReturn(true);
poolConfig.setTestWhileIdle(true);
return poolConfig;
}
@Bean
public JedisConnectionFactory jedisConnectionFactory(){
JedisPoolConfig config = jedisPoolConfig();
JedisConnectionFactory jedisConnectionFactory = new JedisConnectionFactory(config);
jedisConnectionFactory.setDatabase(this.database);
jedisConnectionFactory.setHostName(this.host);
jedisConnectionFactory.setPassword(this.password);
jedisConnectionFactory.setPort(this.port);
jedisConnectionFactory.setTimeout(this.timeout);
return jedisConnectionFactory;
}
@Bean
public RedisTemplate redisTemplate(){
MyRedisTemplate myRedisTemplate = new MyRedisTemplate();
myRedisTemplate.setConnectionFactory(jedisConnectionFactory());
return myRedisTemplate;
}
public RedisCacheManager redisCacheManager(){
MyRedisCacheManager myRedisCacheManager = new MyRedisCacheManager(redisTemplate());
return myRedisCacheManager;
}
@Bean
public CacheErrorHandler cacheErrorHandler(){
MyCacheErrorHandler myCacheErrorHandler = new MyCacheErrorHandler();
return myCacheErrorHandler;
}
@Bean
KeyGenerator keyGenerator(){
MyKeyGenerator myKeyGenerator = new MyKeyGenerator();
return myKeyGenerator;
}
}

Redis 连接失败redis Can't init enough connections amount!的更多相关文章

  1. java原生程序redis连接(连接池/长连接和短连接)选择问题

    最近遇到的连接问题我准备从重构的几个程序(redis和mysql)长连接和短连接,以及连接池和单连接等问题用几篇博客来总结下. 这个问题的具体发生在java原生程序和redis的交互中.这个问题对我最 ...

  2. 红眼技术博客 » redis连接池红眼技术博客 » redis连接池

    红眼技术博客 » redis连接池 redis连接池

  3. python通过连接池连接redis,操作redis队列

    在每次使用redis都进行连接的话会拉低redis的效率,都知道redis是基于内存的数据库,效率贼高,所以每次进行连接比真正使用消耗的资源和时间还多.所以为了节省资源,减少多次连接损耗,连接池的作用 ...

  4. spring-data-redis 上百万的 QPS 压力太大连接失败,我 TM 人傻了

    大家好,我们最近业务量暴涨,导致我最近一直 TM 人傻了.前几天晚上,发现由于业务压力激增,某个核心微服务新扩容起来的几个实例,在不同程度上,出现了 Redis 连接失败的异常: org.spring ...

  5. Redis偶发连接失败案例分析

    [作者] 张延俊:携程技术保障中心资深DBA,对数据库架构和疑难问题分析排查有浓厚的兴趣. 寿向晨:携程技术保障中心高级DBA,主要负责携程Redis及DB的运维工作,在自动化运维,流程化及监控排障等 ...

  6. Redis02 Redis客户端之Java、连接远程Redis服务器失败

    1 查看支持Java的redis客户端 本博文采用 Jedis 作为redis客户端,采用 commons-pool2 作为连接redis服务器的连接池 2 下载相关依赖与实战 2.1 到 Repos ...

  7. Swoole Redis 连接池的实现

    概述 这是关于 Swoole 入门学习的第九篇文章:Swoole Redis 连接池的实现. 第八篇:Swoole MySQL 连接池的实现 第七篇:Swoole RPC 的实现 第六篇:Swoole ...

  8. Redis连接

    using System; using System.Configuration; using StackExchange.Redis; namespace Redis { public sealed ...

  9. Redis系列-远程连接redis并给redis加锁

    假设两台redis服务器,ip分别为:192.168.1.101和192.168.1.103,如何在101上通过redis-cli访问103上的redis呢?在远程连接103之前,先讲下redis-c ...

随机推荐

  1. spring bean parent属性详解

    必要条件:1.子bean必须与父bean保持兼容,也就是说子bean中必须有父bean定义的所有属性. 2.父bean必须是抽象bean或者定义lazy-init=true也就是不让bean工厂实例化 ...

  2. spring 代理 演变过程

    动态代理演变 拿JDBC开事务举例子 最初 写代码 每个CUD 都需要开启事务 所以出现很多累赘代码 因此提出静态代理的构想,把事务交给后台做,程序员只需要 调用update(sql)就行了,upda ...

  3. 严重: Exception starting filter struts2 Unable to load configuration. - [unknown location]

    一般来说,按照这个流程下来是没有错的:SSH三大框架合辑的搭建步骤 但是,近来的一个测试例子出现了以下这个问题,困扰了许久!! 各种百度&各种问同学,最后请教了张老师后问题得到解决: 1.这种 ...

  4. jQuery源代码学习:经常使用正則表達式

    转载自:http://nuysoft.iteye.com/blog/1217898 经常使用的数字正则(严格匹配) 正则 含义 ^[1-9]\d*$ 匹配正整数 ^-[1-9]\d*$ 匹配负整数 ^ ...

  5. mysql安装在centos7报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

    原文链接:http://blog.csdn.net/kuluzs/article/details/51924086 [问题]:mysql版本:5.7.13 首次在centos下安装MySQL,客户端连 ...

  6. unity, List namespace

    如果要使用List,需要using System.Collections.Generic;

  7. 多线程-CountDownLatch,CyclicBarrier,Semaphore,Exchanger,Phaser

    CountDownLatch 一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待.用给定的计数初始化CountDownLatch.调用countDown()计数减一, ...

  8. JQ集合

    获取所有id以a开头的div$("div[id^='a']") $('div').last() $('#item1') <div id='select'>点击这里< ...

  9. poj Squares n个点,共能组成多少个正方形 二分 + 哈希

    题目链接:http://poj.org/problem?id=2002 测试数据: 41 00 11 10 090 01 02 00 21 22 20 11 12 14-2 53 70 05 20 有 ...

  10. freemarker和jsp的比较

    1.共享变量 FreeMarker 的共享变量是我最喜欢的“隐藏”功能之一.此功能可以让你设置自动添加到所有模板的值. 例如,可以设置应用程序的名称作为共享变量. 1 2 Configuration ...