当前位置: 首页 > 知识库问答 >
问题:

Netty NIO客户端行为和服务器OrderedMemoryAwareThreadPoolExecutor

司寇旺
2023-03-14

这对我来说可能很明显,但我仍然想确认以下几点...

给定一个特定的通道和一个NIO Netty服务器,它使用OrderedMemoryAwareThreadPoolExecutor和以下形式的客户端:

    null

首先,请让我知道,如果以上是不正确的。如果有,请指正。

对于断言3),服务器仍然按照每个事件接收的顺序处理请求,但是由于客户机是异步的,所以发送请求的顺序是无法预测的。真的吗?

因此,从客户的角度来看,响应顺序似乎不同。由于客户机的异步特性,请求发送到服务器的顺序并不清楚。

我需要确定我对这个项目的理解,我正在工作,所以任何帮助都非常感谢。

共有1个答案

吕琪
2023-03-14

只要使用TCP,响应顺序就必须与在服务器中发送响应的顺序一致。这只是在使用UDP时不是真的。

 类似资料:
  • 我想在一些计算机之间建立点对点连接,这样用户就可以在没有外部服务器的情况下聊天和交换文件。我最初的想法如下: 我在服务器上制作了一个中央服务器插座,所有应用程序都可以连接到该插座。此ServerSocket跟踪已连接的套接字(客户端),并将新连接的客户端的IP和端口提供给所有其他客户端。每个客户端都会创建一个新的ServerSocket,所有客户端都可以连接到它。 换句话说:每个客户端都有一个Se

  • 问题内容: 我尝试使用以下代码从服务器到客户端发送文件和目录列表。服务器正在从客户端接收消息,但我不知道服务器是否没有发送回结果或客户端是否不接受结果。 服务器端: 问题答案: 据我所见,您在客户端上做的同时在服务器上做。从服务器发送的字符串中没有行尾字符,因此客户端将永远无法完成。执行outqw.println()或添加到要发送的内容的末尾。话虽这么说,很难用一堆注释掉的东西来浏览未格式化的代码

  • 我正在使用spring cloud Eureka配置一个应用程序。我在8761端口启动我的discovery应用程序,并在“http://localhost:8761”中到达控制台。 所以,我启动了我的客户端应用程序,它出现在eureka控制台的“应用程序”页面中。 第一个问题:我的客户机在properties config中使用了“server.port=0”,所以tomcat端口是随机启动的。

  • 似乎服务器拒绝了wireshark输出中的tls协商,但我从代码中看不出原因。它是基于工作的代码,只是它被否决了,因此我用新的API更新。代码是开始。需要使用真实的证书。有人知道为什么服务器发送tcp FIN,ack吗? 我有以下服务器代码: 23 16.856111 sonymobi_7f:55:af intelcor_25:1d:fc ARP 42 10.1.10.100在84:c7:ea:7

  • 编译 本例涉及到多模块 Maven 项目的组织 在例子 chapter2 目录下,执行 mvn clean package 输出如下 Listing 2.6 Build Output chapter2>mvn clean package [INFO] Scanning for projects... [INFO] -----------------------------------------

  • 前面的章节介绍了所有 Redis 的重要功能组件: 数据结构、数据类型、事务、Lua 环境、事件处理、数据库、持久化, 等等, 但是我们还没有对 Redis 服务器本身做任何介绍。 不过, 服务器本身并没有多少需要介绍的新东西, 因为服务器除了维持服务器状态之外, 最重要的就是将前面介绍过的各个功能模块组合起来, 而这些功能模块在前面的章节里已经介绍过了, 所以本章将焦点放在服务器的初始化过程,