如何为Spring Data Access配置ElastiCache Redis

时间:2015-06-01 07:25:33

标签: redis spring-data-jpa jedis amazon-elasticache

我正在尝试将ElastiCache设置为与Java应用程序一起使用。我根据此文档制作了基于我的设置: https://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/BestPractices.html

运行Java(8)App的EC2实例位于VPC中。 我在VPC和VPC中都尝试过ElastiCache实例。但是,我总是得到,

redis.clients.jedis.exceptions.JedisConnectionException: java.net.ConnectException: Connection refused

如果我自己在EC2实例上安装Redis并连接到它,该应用程序可以连接到Redis缓存!

我已经使用Security-group从EC2到Cache-Security设置了适当的授权,但没有运气。我只是不能做'连接'。任何示例连接代码段都非常有用。

Redis在APP配置中以这种方式设置:

    @Bean
    public JedisConnectionFactory redisConnectionFactory() {
    JedisConnectionFactory redisConnectionFactory = new JedisConnectionFactory();
    redisConnectionFactory.setHostName(<cache-node>);
    redisConnectionFactory.setPort(6397);
    redisConnectionFactory.setUsePool(true);
    redisConnectionFactory.setTimeout(3600);
    return redisConnectionFactory;
   }

各种版本:

Jedis- 2.6.2, Spring- 4.1.6, Spring-data-> 1.5.0

2 个答案:

答案 0 :(得分:0)

Import-Module ActiveDirectory
Set-Location AD:
$Users = Get-ADUser -Filter * | % {$_.SamAccountName}

foreach ($User in $Users) {
    (Get-Acl (Get-ADUser -Identity $User).DistinguishedName).Access | 
    Where-Object {$_.IdentityReference -eq "BUILTIN\Account Operators"} return true |
    select IdentityReference, AccessControlType
}

应该是

redisConnectionFactory.setPort(6397);

答案 1 :(得分:0)

telnet redis-ip 6397

确定是否可以连接Redis