【问题标题】:how to run a server socket on amazon EC2如何在亚马逊 EC2 上运行服务器套接字
【发布时间】:2014-06-07 07:17:39
【问题描述】:

我正在尝试编写一个与服务器交互的 android 应用程序。我现在正在尝试用套接字编写服务器端。我创建了一个 ec2 实例并运行它。我用 putty 连接到它并运行了一个简单的“hello world”java 程序。现在我正在尝试运行使用套接字的服务器,但我将其作为服务器套接字:ServerSocket[addr=0.0.0.0/0.0.0.0,localport=5667]。 这是我的代码,到目前为止非常基本:

public class EchoServer {
public static void main(String[] args) throws IOException {

    int portNumber = 5667;

    System.out.println("server socket main");

    try (ServerSocket serverSocket = new ServerSocket(portNumber);
            ) {

        System.out.println(serverSocket.toString());
    } catch (IOException e) {
        System.out
                .println("Exception caught when trying to listen on port "
                        + portNumber + " or listening for a connection");
        System.out.println(e.getMessage());
    }
}
}

我应该如何运行服务器以便通过我的安卓设备连接到它?

谢谢!

【问题讨论】:

    标签: java android sockets amazon-web-services amazon-ec2


    【解决方案1】:

    你在正确的轨道上。 0.0.0.0 仅表示:

    一种指定“任何 IPv4 接口”的方法。在配置服务器时(即绑定监听套接字时)以这种方式使用。

    接下来,您的服务器将需要使用 SocketServer.accept() 监听传入连接。

    然后你当然会想在套接字上接收和发送数据。这个tutorial 应该会有所帮助。

    最后,如果您计划通过服务器同时为多个客户端提供服务,您将需要考虑并发性可扩展性,或许还可以考虑使用像Netty 这样的框架.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-22
      • 1970-01-01
      • 1970-01-01
      • 2014-03-12
      相关资源
      最近更新 更多