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

通过TCP连接由异步事件(xml消息)驱动的Java客户端

邢良才
2023-03-14

共有1个答案

谢典
2023-03-14

如果您不能串行处理消息(除非您的客户端执行得特别糟糕),我会非常惊讶

我将使用一个简单的IO套接字和一个STaX事件解析器来解码消息。Javolution XML解析器非常快。我不喜欢Spring,因为它倾向于把简单问题的复杂解决方法搞得一团糟。您应该可以只使用一个类文件和几个小的嵌套类来完成所有这些。不要害怕自己编写代码,这是你成为一个更有经验的开发人员的方式。

我希望您能够通过一个读取线程每秒处理1000多条大型XML消息,每秒处理多达200,000条小型XML消息。

 类似资料:
  • 我正在构建一个tcp客户端来接收和发送消息。我按照Netty用户指南中的步骤编写了一个简单的tcp客户端,其中包含一个扩展的自定义处理程序。 在hander中,我存储了< code > ChannelHandlerContext : 然后我有一个发送方法,它使用发送消息: 我发现的另一个选项是在客户机类中使用

  • 是否可以通过单个TCP连接同时发送各种东西,如消息和文件? 例如,我想在文件发送过程中发送文本命令。有没有可能不让连接变慢太多?如果这是可能的,我将如何实现这一点?我需要用每个数据包的描述ID在数据包中发送它吗? 还是最好打开两个单独的连接?

  • 异步Tcp客户端 串行发包 use AsyncTcp; $tcp = new AsyncTcp('127.0.0.1', 9501); $tcp->setTimeout(2); //串行发送 $res = (yield $tcp->call('hello server!')); $res = (yield $tcp->call('hello serv

  • > 构造函数接受InetSocketAddress和actorref。InetSocketAddress是有意义的(我假设这是目的地),但是actorref是什么?这是我第一次使用akka,但据我了解,ActorRef是另一个演员的引用。既然我的TCP客户端是一个参与者,并且我希望这个TCP参与者与TCP服务器通信,而不是与另一个参与者通信,为什么我要给它一个参与者引用? 伙伴对象中的道具功能是用

  • 我有点卡在服务器端了。我让它读取packetLength变量,方法是使用Buffer.BlockCopy复制前4个字节,然后使用BitConverter.ToInt32读取应该获得的长度。我不确定是应该不断地将传入的数据读入特定于客户端的流对象中,还是只使用while循环。下面是我到目前为止在服务器端所拥有的代码示例: 谢谢你的时间和建议,我期待着学习更多关于这个主题的知识。

  • 我使用这个(Android TCP连接增强的)教程来创建简单的JAVA TCPServer和Android TCPClient。它工作得很好,但使用这段代码我只能同时将一个设备连接到服务器。我必须更改什么才能连接多个设备?