【问题标题】:What is the difference between echo-server and client-server chat application in java?java中的echo-server和client-server聊天应用程序有什么区别?
【发布时间】:2016-12-07 19:22:49
【问题描述】:

我还想知道单线程和多线程客户端-服务器之间的主要区别是什么? 我想创建一个客户端服务器聊天应用程序。

服务器表单包括: 1 Textarea(文本区域)(显示文本) 1 sendarea(文本区域)(输入要发送的文本) 1 发送按钮(发送在 sendarea 中输入的文本)它发送给客户端 1 个退出按钮(关闭应用程序)

客户表格包括: 1 Textarea(文本区域)(显示文本) 1 sendarea(文本区域)(输入要发送的文本) 1 发送按钮(发送在 sendarea 中输入的文本)它发送到服务器 1 个退出按钮(关闭应用程序)

【问题讨论】:

    标签: java client-server


    【解决方案1】:

    单线程意味着1个线程。多线程意味着多线程。就您的聊天服务器而言,这意味着:

    如果您有一个单线程服务器,则只能与服务器建立 1 个连接。 多线程将允许您在每次新聊天客户端连接时创建一个新线程,并发出自己的输入/输出流来发送和接收聊天消息。

    回显服务器只会从连接的 1 个客户端回显消息,而聊天服务器将允许您向其他用户广播消息并允许他们向您的客户端发送消息。

    【讨论】:

      【解决方案2】:

      这听起来很像家庭作业,所以如果是,你应该这样标记。

      回显服务器通常是一个应用程序,用于测试客户端和服务器之间的连接是否成功。它由一个服务器组成,该服务器发回客户端发送的任何文本。

      客户端-服务器是您拥有一个主节点(服务器)的任何环境,其他节点(客户端)连接到该主节点(服务器),通常是为了请求一些信息。

      单线程服务器是使用 1 个主线程来处理所有请求的服务器。通常这些用于处理非常短的请求,例如同步计算机时钟。这些被称为迭代服务器。

      多线程服务器是每个客户端使用一个或多个线程的服务器。大多数应用程序服务器通常都是这种情况,并且有利于可伸缩性。它还允许服务器在任何一个时间点处理多个客户端。这些被称为并发服务器。

      我建议您看看this Oracle 教程。它应该可以帮助您入门并为您指明正确的方向。

      【讨论】:

        猜你喜欢
        • 2011-11-07
        • 2016-04-30
        • 2015-01-10
        • 1970-01-01
        • 1970-01-01
        • 2019-11-20
        • 2014-04-09
        • 2015-07-06
        • 2011-10-18
        相关资源
        最近更新 更多