【问题标题】:502 Bad Gateway error throw in cloundfoundry tunneling Mongo Database在 cloundfoundry 隧道 Mongo 数据库中抛出 502 Bad Gateway 错误
【发布时间】:2013-03-04 04:54:08
【问题描述】:

我使用 grails cloudfoundry 插件和隧道连接到远程 Mongo DB 服务。连接很好,因为我可以第一次搜索,但几秒钟后,终端开始打印 502 Bad Gateway 错误,我无法执行任何 mongo db 命令。

|运行 cf-tunnel-disconnect 关闭当前隧道 |

Error Exception in thread "ThreadPoolTaskExecutor-3"
    | Error org.cloudfoundry.caldecott.TunnelException: Error while reading from tunnel
    | Error     at org.cloudfoundry.caldecott.client.TunnelHandler$Reader.run(TunnelHandler.java:172)
    | Error     at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
    | Error     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
    | Error     at java.lang.Thread.run(Thread.java:680)
    | Error Caused by: org.springframework.web.client.HttpServerErrorException: **502 Bad Gateway
    | Error**   at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:92)
    | Error     at org.springframework.web.client.RestTemplate.handleResponseError(RestTemplate.java:494)
    | Error     at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:451)
    | Error     at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:409)
    | Error     at org.cloudfoundry.caldecott.client.HttpTunnel.receiveDataBuffered(HttpTunnel.java:150)
    | Error     at org.cloudfoundry.caldecott.client.HttpTunnel.receiveBytes(HttpTunnel.java:140)
    | Error     at org.cloudfoundry.caldecott.client.HttpTunnel.read(HttpTunnel.java:83)
    | Error     at org.cloudfoundry.caldecott.client.TunnelHandler$Reader.run(TunnelHandler.java:148)
    | Error     ... 3 more

【问题讨论】:

  • 直接用vmc隧道试试。这似乎是 cf grails 插件内部的连接问题,我也遇到了同样的问题。

标签: mongodb grails cloud-foundry tunnel


【解决方案1】:

这看起来像是在 cloudfoundry-caldecott-lib 的后续版本中修复的错误处理问题。最新的是 0.1.3,可从 Spring Source 里程碑 repo (http://repo.springsource.org/libs-milestone/org/cloudfoundry/cloudfoundry-caldecott-lib/) 获得。

我不确定 Grails 插件使用哪个版本,但如果它是旧版本,那就可以解释为什么您会看到这个。

【讨论】:

【解决方案2】:

感谢@trisberg 的解释和@scott 的发现,现在我可以使用 VMC 隧道连接到我的远程数据库。问题解决了。

【讨论】:

    猜你喜欢
    • 2018-11-12
    • 1970-01-01
    • 2020-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-23
    • 2020-11-12
    • 1970-01-01
    相关资源
    最近更新 更多