大家好日子!是否需要在java UDP服务器实现中存储传入消息?
我正在开发基于Java NIO的简单Java UDP服务器。 Here我读过,我必须将所有传入的消息存储在某个缓冲区中,并以某种方式识别换行符。但是,如果传入消息的大小始终为< =缓冲区大小,我是否需要存储以前的状态?我的意思是我的ByteBuffer足够大以存储任何传入的消息。是否有些情况下,确保自己处理一些像monolit这样的消息更好,而他们只是一些重要消息的一部分?我只是不想做头脑工作,并且想要精确地分配足够大的缓冲危险策略与否。
你能准确地发送一些短消息就等于发送1数据报吗?即使这条消息很短,客户端计算机是否可以将我的消息分成几个数据报? – Baurzhan 2013-03-15 04:52:51
对'DatagramChannel.send'的调用只发送**一个数据报**,并且不会被客户机分割。 – Javier 2013-03-15 04:55:49
实际上,我并没有在客户端使用DatagramChannel.send - 它是一些配置为通过UDP协议将消息发送到某个IP地址的设备。我不知道它是如何在内部向我发送消息的。它似乎是测试它的唯一方法是分析来自此设备的日志) – Baurzhan 2013-03-15 04:58:54