【问题标题】:Client - Server Java Docker Container Communication客户端 - 服务器 Java Docker 容器通信
【发布时间】:2022-01-28 18:19:59
【问题描述】:

我现在正在学习 Docker,我想创建 2 个简单的客户端-服务器 Java 容器,客户端在其中发送订单,服务器以确认消息响应订单已收到。

我应该使用什么协议将消息从客户端发送到服务器?

客户端-服务器示例代码

public class Client {

    private static int counter = 0;
    private final String name;
    private final int id;
    private final Server server;
    private Order order;

    public Client(String name, @NotNull Server server) {
            this.name = name;
            this.id= ++counter;
            this.server = server;
        }
    
    public void submitOrder(Order order) {
            this.order = order;
    
            if (server!= null) {
                server.receiveOrder(this);
            } else {
                throw new UnsupportedOperationException("Client did not select a preferred server.");
            }
        }
}

public class Server {

    private String serverName;

    public Server(String serverName) {
           this.serverName = serverName;
        }
    
    public void receiveOrder(Client client) {
            sendConfirmationEmailToClient();
        }
}

有没有我可以查看的示例代码?

【问题讨论】:

    标签: java docker


    【解决方案1】:

    客户端/服务器通信可以使用不同的协议完成,但最常见的是使用 HTTP。

    您还可以使用 WebSocket 进行实时通信。

    【讨论】:

      【解决方案2】:

      虽然您可以使用 TCP 或 UDP 并在此基础上构建自己的协议,但我相信您应该使用易于处理的东西,可能已经存在,这样您就可以专注于 docker 专业。否则学习曲线可能太陡了。

      我建议您使用 HTTP,然后只需要 HTTP 服务器和客户端 - 大概是在 Java 中,因为您在这里提出了问题。那么怎么样

      对于 Tomcat,您甚至可以使用 already existing containers 作为开始。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-05-05
        • 1970-01-01
        • 2015-05-08
        • 2013-08-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多