返回

提问 添加收藏

一个坑爹的问题 —— 关于某些情况下 J2Cache 连接 Redis 超过 5 秒的问题

红薯 发布于 2018年02月06日 (共有5个回帖)

今天发现在我的 Mac 上使用 J2Cache 时候,在连接 Redis 部分需要执行至少 5 秒以上。(J2Cache 默认使用的是 JedisPool 连接 Redis),然后我写了一个简单的代码用 Jedis 类直接连是很快的,说明 Redis 服务本身是没问题的。

然后 @三刀蜀黍 说,这是由于 InetAddress.getLocalHost() 方法执行很慢的原因,测试一下单独调用 InetAdress.getLocalHost() 果然需要超过 5 秒才会返回结果。

解决的办法是在机器的 hosts 文件里做机器名和 IP 地址的映射,如下:

127.0.0.1       localhost
127.0.0.1       winter-notebook.local
::1             localhost
::1             winter-notebook.local

果然再次运行只需要一百多毫秒。

J2CacheRedis
文明上网,理性发言
客户端 Android iPhone WP7