Netty Channel 说远程地址是 "embedded"。我怎样才能找到发起人?
Netty Channel says remote address is "embedded". How can I find the originator?
我有几个非常复杂的基于 Netty 4 的进程,它们有很多传入和传出连接。在某种情况下,我在一台机器上有大约一打 运行。
我有自己的处理程序和管道,在处理程序中,我查询 ChannelHandlerContext 以记录一组请求的远程端。
通常我会这样做:
public void handle(ChannelHandlerContext ctx, HttpRequest request){
System.out.println(ctx.getChannel().getRemoteAddress());
}
在这种情况下,远程地址是 EmbeddedSocketAddress 类型,returns 只是 "embedded"。
在正常情况下,我可以从 InetSocketAddress 中获取 IP/Port 并使用 lsof 找出谁在调用。在这种情况下,我不能。
我怎样才能知道 what/who 正在调用我的处理程序?
好的,所以我知道这些是从哪里来的。创建我的管道的框架运行一个 "warm up" 例程,该例程将这些请求直接注入到没有远程端的管道中。我为我的愚蠢道歉。
我有几个非常复杂的基于 Netty 4 的进程,它们有很多传入和传出连接。在某种情况下,我在一台机器上有大约一打 运行。
我有自己的处理程序和管道,在处理程序中,我查询 ChannelHandlerContext 以记录一组请求的远程端。
通常我会这样做:
public void handle(ChannelHandlerContext ctx, HttpRequest request){
System.out.println(ctx.getChannel().getRemoteAddress());
}
在这种情况下,远程地址是 EmbeddedSocketAddress 类型,returns 只是 "embedded"。
在正常情况下,我可以从 InetSocketAddress 中获取 IP/Port 并使用 lsof 找出谁在调用。在这种情况下,我不能。
我怎样才能知道 what/who 正在调用我的处理程序?
好的,所以我知道这些是从哪里来的。创建我的管道的框架运行一个 "warm up" 例程,该例程将这些请求直接注入到没有远程端的管道中。我为我的愚蠢道歉。