Tencent/APIJSON

[问题] 我为了使用SQLAUTO下载了后端依赖APIJSONBoot-MultiDataSource,我按照教程配置了mysql的sys表信息,通过 IDEA启动了后端服务,控制台报出Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Failed to create socket.

shenqi521 opened this issue · 1 comments

Description

[问题]

我为了使用SQLAUTO下载了后端依赖APIJSONBoot-MultiDataSource,我按照教程配置了mysql的sys表信息,通过 IDEA启动了后端服务,控制台报出Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Failed to create socket.

我的疑问:
1.APIJSONBoot-MultiDataSource服务是否需要配置redis数据库?
2.我根据教程配置的mysql的sys数据库下的表,是用来做的什么的?是否是用来存储APIJSON的元数据?还是说用来测试数据库功能的业务库。

控制台报错信息:
rg.springframework.data.redis.RedisConnectionFailureException: Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Failed to create socket.
at org.springframework.data.redis.connection.jedis.JedisConnectionFactory.fetchJedisConnector(JedisConnectionFactory.java:283)
at org.springframework.data.redis.connection.jedis.JedisConnectionFactory.getConnection(JedisConnectionFactory.java:485)
at org.springframework.data.redis.core.RedisConnectionUtils.doGetConnection(RedisConnectionUtils.java:131)
at org.springframework.data.redis.core.RedisConnectionUtils.getConnection(RedisConnectionUtils.java:94)
at org.springframework.data.redis.core.RedisConnectionUtils.getConnection(RedisConnectionUtils.java:81)
at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:216)
at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:189)
at org.springframework.data.redis.core.AbstractOperations.execute(AbstractOperations.java:96)
at org.springframework.data.redis.core.DefaultValueOperations.get(DefaultValueOperations.java:53)
at apijson.demo.DemoSQLExecutor.getCache(DemoSQLExecutor.java:90)
at apijson.orm.AbstractSQLExecutor.execute(AbstractSQLExecutor.java:272)
at apijson.demo.DemoSQLExecutor.execute(DemoSQLExecutor.java:323)
at apijson.orm.AbstractParser.executeSQL(AbstractParser.java:1934)
at apijson.demo.DemoParser.executeSQL(DemoParser.java:130)
at apijson.orm.AbstractObjectParser.onSQLExecute(AbstractObjectParser.java:981)
at apijson.orm.AbstractObjectParser.executeSQL(AbstractObjectParser.java:819)
at apijson.orm.AbstractObjectParser.executeSQL(AbstractObjectParser.java:43)
at apijson.orm.AbstractParser.onObjectParse(AbstractParser.java:1122)
at apijson.orm.AbstractObjectParser.onChildParse(AbstractObjectParser.java:549)
at apijson.orm.AbstractObjectParser.parse(AbstractObjectParser.java:283)
at apijson.orm.AbstractObjectParser.parse(AbstractObjectParser.java:43)
at apijson.orm.AbstractParser.onObjectParse(AbstractParser.java:1032)
at apijson.orm.AbstractParser.onArrayParse(AbstractParser.java:1261)
at apijson.orm.AbstractObjectParser.onChildParse(AbstractObjectParser.java:529)
at apijson.orm.AbstractObjectParser.parse(AbstractObjectParser.java:283)
at apijson.orm.AbstractObjectParser.parse(AbstractObjectParser.java:43)
at apijson.orm.AbstractParser.onObjectParse(AbstractParser.java:1032)
at apijson.orm.AbstractParser.parseResponse(AbstractParser.java:466)
at apijson.framework.APIJSONParser.parseResponse(APIJSONParser.java:117)
at apijson.demo.DemoParser.parseResponse(DemoParser.java:90)
at apijson.framework.APIJSONVerifier.initAccess(APIJSONVerifier.java:169)
at apijson.framework.APIJSONVerifier.initAccess(APIJSONVerifier.java:139)
at apijson.framework.APIJSONApplication.init(APIJSONApplication.java:81)
at apijson.framework.APIJSONApplication.init(APIJSONApplication.java:44)
at apijson.boot.DemoApplication.main(DemoApplication.java:97)
Caused by: redis.clients.jedis.exceptions.JedisConnectionException: Failed to create socket.
at redis.clients.jedis.DefaultJedisSocketFactory.createSocket(DefaultJedisSocketFactory.java:110)
at redis.clients.jedis.Connection.connect(Connection.java:226)
at redis.clients.jedis.BinaryClient.connect(BinaryClient.java:144)
at redis.clients.jedis.BinaryJedis.connect(BinaryJedis.java:314)
at redis.clients.jedis.BinaryJedis.initializeFromClientConfig(BinaryJedis.java:92)
at redis.clients.jedis.BinaryJedis.(BinaryJedis.java:87)
at redis.clients.jedis.BinaryJedis.(BinaryJedis.java:82)
at redis.clients.jedis.BinaryJedis.(BinaryJedis.java:173)
at redis.clients.jedis.Jedis.(Jedis.java:104)
at org.springframework.data.redis.connection.jedis.JedisConnectionFactory.createJedis(JedisConnectionFactory.java:296)
at org.springframework.data.redis.connection.jedis.JedisConnectionFactory.fetchJedisConnector(JedisConnectionFactory.java:276)
... 34 more
Caused by: java.net.SocketTimeoutException: connect timed out
at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
at java.net.Socket.connect(Socket.java:606)
at redis.clients.jedis.DefaultJedisSocketFactory.createSocket(DefaultJedisSocketFactory.java:80)
... 44 more
2023-07-26 03:35:12.033: DemoSQLExecutor.DEBUG: getConnection config.getDatasource() = null
2023-07-26 03:35:12.033: AbstractSQLExecutor.INFO: >>> execute result = getCache('SELECT * FROM sys.Access LIMIT 100', 0) = null
2023-07-26 03:35:12.033: AbstractSQLExecutor.INFO: select connection = null
2023-07-26 03:35:13.182: AbstractSQLExecutor.DEBUG:

Redis 用来做缓存提升性能,拿不到缓存值不影响功能,忽略这个报错日志即可。