顶点tcp客户端丢弃数据包

时间:2019-03-15 10:39:47

标签: tcp vert.x

我已经创建了Vertx TCP Server和相应的TCP Client。 TCP客户端的工作是从特定目录中读取日志(以gzip格式),并将其连续上传到服务器。然后,服务器将进行一些处理并保留数据。由于日志为gzip格式,因此日志文件的平均大小为144 KB。我的TCP客户端模拟器产生了4个线程,每个线程将创建100个此类日志文件并将其上传到顶点服务器。因此,最后,我希望看到400(= 100 * 4)个文件上传到服务器。 但是令我惊讶的是,模拟器完成后,我看到服务器仅处理了76个文件,而没有迹象表明剩余324个文件。我已经多次运行它,但是每次服务器处理大约75个文件时。 从TCP客户端日志中,我看到所有400个文件都已上传。因此,似乎服务器正在丢弃某些数据包。但是从服务器日志中,我只能看到大约76个文件。 后来我减小了模拟器生成的压缩日志文件的大小,使其变为8KB(现在每个日志文件的日志条目数量减少了),这次我看到在服务器端处理了大约398个文件。

显然,这似乎是一些配置问题。也许我必须为Vertex服务器配置更多资源(实例,增加接收缓冲区的大小和事件队列的大小等)。但是谁能知道这个限制,超出这个限制,数据包将被丢弃。

  1. 更准确地说,在这种情况下需要什么“特定”配置。
  2. 第二,是否可以使用某种确认机制配置Vertx“ TCP”客户端/服务器,以便只有在成功处理了先前上传的文件后,客户端才能上传后续文件。

0 个答案:

没有答案