顶点tcp客户端丢弃数据包

顶点tcp客户端丢弃数据包,tcp,vert.x,Tcp,Vert.x,我已经创建了Vertex TCP服务器和相应的TCP客户端。TCP客户端的任务是从特定目录读取日志(gzip格式),并持续上传到服务器。然后服务器将执行一些处理并持久化数据。因为日志是gzip格式的,所以日志文件的平均大小是144 KB。我的TCP客户端模拟器正在生成4个线程,每个线程将创建100个这样的日志文件并将它们上传到vertex服务器。最后,我希望看到400(=100*4)个文件上传到服务器。 但令我惊讶的是,一旦模拟器完成,我看到服务器只处理了76个文件,没有剩余324个文件的迹象。

我已经创建了Vertex TCP服务器和相应的TCP客户端。TCP客户端的任务是从特定目录读取日志(gzip格式),并持续上传到服务器。然后服务器将执行一些处理并持久化数据。因为日志是gzip格式的,所以日志文件的平均大小是144 KB。我的TCP客户端模拟器正在生成4个线程,每个线程将创建100个这样的日志文件并将它们上传到vertex服务器。最后,我希望看到400(=100*4)个文件上传到服务器。 但令我惊讶的是,一旦模拟器完成,我看到服务器只处理了76个文件,没有剩余324个文件的迹象。我已经运行过多次,但每次服务器处理大约75个文件。 从TCP客户端日志中,我看到所有400个文件都已上载。看来服务器正在丢弃一些数据包。但是从服务器日志中,我看到只有约76个文件被处理。 后来,我减小了模拟器生成的压缩日志文件的大小,使其为8KB(每个日志文件现在有较少的日志条目),这次我看到大约398个文件在服务器端处理

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

  • 更准确地说,在这种情况下需要什么“特定”配置
  • 其次,是否可以使用某种确认机制配置Vertx“TCP”客户机/服务器,以便只有在成功处理之前上载的文件后,客户机才能上载后续文件

  • 如果客户机丢弃了数据包,您将不会看到更少的文件。您可能看到过不同大小的文件。可能发生的情况是你过早地关闭了你的客户。如果看不到代码,就不可能解决这个问题,但是/如果客户机丢弃了数据包,您将不会看到更少的文件。您可能看到过不同大小的文件。可能发生的情况是你过早地关闭了你的客户。但是,如果没有看到代码,就不可能解决这个问题/