AWS lambda Java打开http套接字超时

时间:2016-10-03 01:27:49

标签: java sockets amazon-web-services aws-lambda

我在处理程序函数中的AWS Lambda中运行以下内容:

URL url = new URL("www.sfsuperiorcourt.org");
URLConnection connection = url.openConnection();
connection.setConnectTimeout(2000);
connection.connect();

这是一个处理函数。在本地运行时,它很好,并立即连接,我能够检索内容。在Lambda上,它以java.net.SocketTimeoutException: connect timed out失败。如果我没有在连接上设置超时,Lambda本身会在10秒后超时。这种情况一直发生,并且在我的本地机器上,它始终如一,所以我确定它与我连接的网站没有问题。

我能够在Lambda上成功进行IP地址解析,因此不是问题所在。似乎与打开套接字完全相关。

也许我的角色需要获得打开套接字的权限?还有其他明显的东西吗?调试TCP层的任何已知方法?

1 个答案:

答案 0 :(得分:1)

如果你在一个VPC中设置你的lambda,而你在那个VPC中不需要它,那么只需要在没有 VPC中使用lambda。

否则,请阅读我的回答here