我编写了一个简单的代码来连接到java中的smtp服务器并部署到amazon。
import java.io.*;
import java.net.*;
public class SocketClient {
public static void main(String[] args) {
Socket s = new Socket();
try {
s.connect(new InetSocketAddress("alt4.gmail-smtp-in.l.google.com",25));
} catch(Exception e) {
System.out.println(e.getMessage());
}
System.out.println("Connected");
}
}
在本地系统上,它可靠地工作。但如果在使用ubuntu服务器的Amazon Ec2微实例上连续运行它,它会在3次后失败。然后我需要等几分钟然后重试。线路故障是s.connect。它永远不会返回并抛出java连接错误。无法在本地Windows系统上重现相同的内容。有什么我想念的东西。安全策略很好,因为它首先工作三次。