骆驼Netty Tcp双向

时间:2018-08-24 12:24:37

标签: tcpclient tcplistener

整整一周都有些艰难,但Camel-Netty仍在努力解决问题。

TCP上下文源(服务定义)的设置如下 netty4:tcp:,sync = true,synchronous = true,clientMode = false,transferExchange = true,allowDefaultCodec = false,keepAlive = true,tcpNoDelay = true,decoders =#Decoders

Tcp上下文对象设置为

context.setTracing(true)
context.setStreamCaching(true)

设置路由配置

from(sourceInfo)
.process(<processor code>)
.filter(body().isNotNull())
.filter(body().isNotEqualTo(""))
.log("Message Body = [${body}]")
.multicast()
.parallelProcessing()
.inOnly("direct:forwardmessage")
.to("mock:closemessage")
.transform().constant("ACK");

//forward the Message body to Kafka.
from("direct:forwardmessage")
.to(targetInfo) ; 

我希望此设置应该向TCP客户端返回一条响应消息(“ ACK”),并将消息发送到该端口。

但是它没有发生,因为客户端没有收到“ ACK”字符串作为服务响应。

使用Camel Netty TCP确实可行吗?还是我应该使用香草NIO套接字实现?

可以肯定,不是第一个出现此问题的人,因此需要帮助/建议来解决此问题。

0 个答案:

没有答案