问题描述
我正在尝试连接到 AWS 上的 Elasticache Redis 实例,但遇到了一些问题...
禁用传输中加密时,我可以正常连接。但是,当它启用时,我遇到了问题。
我正在使用 scala-redis,我可以在读取时连接到 redis 客户端。但是在写入时没有任何反应,我的工作只是挂起并最终超时。 elasticache 没有任何身份验证,我按照 scala-redis 中的测试示例来建立 SSL 连接。
object RedisClient {
var writeHost: String = "HOST"
var readHost: String = "HOST"
var port: Int = 6379
var keyTTL: Int = 3600
var maxIdle: Int = 8
var database: Int = 0
var secret: Option[Any] = None
var timeout: Int = 300000
var maxConnections: Int = RedisClientPool.UNLIMITED_CONNECTIONS
var poolWaitTimeout: Int = 3000
private val sslContext = SSLContexts.custom().loadTrustMaterial(null,new TrustStrategy(){
def isTrusted(arg0: Array[X509Certificate],arg1:String) = true
}).build()
private lazy val writePool = new RedisClientPool(writeHost,port,maxIdle,database,secret,timeout,maxConnections,poolWaitTimeout,Some(sslContext))
private lazy val readPool = new RedisClientPool(readHost,poolWaitTimeout)
def getCount(id: String): Option[String] = {
readPool.withClient(client => {
client.get(id)
})
}
def setCount(id: String,count: String): Boolean = writePool.withClient(client => {
client.setex(id,keyTTL,count)
})
def close(): Unit = {
readPool.close()
writePool.close()
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)