我正在尝试在云代工厂部署基于resque(i.e jesque java version)
的独立应用程序,我在部署应用程序时绑定了redis服务。
我正在使用STS
来完成所有这些过程。但是像
redis.clients.jedis.exceptions.JedisConnectionException: java.net.ConnectException: Connection refused
at redis.clients.jedis.Connection.connect(Connection.java:134)
at redis.clients.jedis.BinaryClient.connect(BinaryClient.java:69)
at redis.clients.jedis.Connection.sendCommand(Connection.java:79)
at redis.clients.jedis.BinaryClient.select(BinaryClient.java:148)
at redis.clients.jedis.Jedis.select(Jedis.java:328)
at net.greghaines.jesque.TestUtils.createJedis(TestUtils.java:75)
at net.greghaines.jesque.TestUtils.resetRedis(TestUtils.java:45)
at com.accenture.creditcard.UseCreditCard.resetRedis(UseCreditCard.java:23)
at com.accenture.creditcard.UseCreditCard.main(UseCreditCard.java:56)
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at redis.clients.jedis.Connection.connect(Connection.java:129)
答案 0 :(得分:1)
将应用推送到云代工厂时,CF配置的数据服务具有不同的配置,例如您自己的配置中的用户名/密码。对于Java独立应用程序,您必须首先从云代工厂提供的名为“VCAP_SERVICES”的环境中检索绑定服务的连接信息。您应该找到设置与云代工厂配置的redis服务的连接所需的所有属性。
对于像spring web app这样的其他类型的应用程序,CF有一个称为自动重新配置的功能,它通过某些编程约定自动设置连接。以下是您感兴趣的文档:http://docs.cloudfoundry.com/frameworks/java/spring/spring.html