美文网首页
线上多TCP连接定位

线上多TCP连接定位

作者: 枫叶_huazhe | 来源:发表于2019-12-05 11:35 被阅读0次

    1.获取线程号

    image.png

    2.出现大量的 TCP 链接

    image.png image.png

    2. strace -f -p 952865 -e trace=network

    image.png

    3.strace -p 952970

    image.png

    观测这个线程,将此线程号转为 16进制

    image.png image.png image.png

    观测此进程,476线程

    ls -l /proc/952865/fd/476

    image.png

    打开日志,发现 出现报错信息

    image.png

    2019-10-10 15:38:27,739 INFO RocketmqRemoting(456) - [traceId: spanId: pSpanId:] createChannel: begin to connect remote host[10.0.42.98:9876] asynchronously

    2019-10-10 15:38:27,739 WARN RocketmqRemoting(481) - [traceId: spanId: pSpanId:] createChannel: connect remote host[10.0.42.98:9876] failed, DefaultChannelPromise@12f84a88(failure: io.netty.channel.ChannelException: Unable to create Channel from class class io.netty.channel.socket.nio.NioSocketChannel)

    io.netty.channel.ChannelException: Unable to create Channel from class class io.netty.channel.socket.nio.NioSocketChannel

        at io.netty.channel.ReflectiveChannelFactory.newChannel(ReflectiveChannelFactory.java:40)
    
        at io.netty.bootstrap.AbstractBootstrap.initAndRegister(AbstractBootstrap.java:321)
    
        at io.netty.bootstrap.Bootstrap.doResolveAndConnect(Bootstrap.java:163)
    
        at io.netty.bootstrap.Bootstrap.connect(Bootstrap.java:145)
    
        at com.alibaba.rocketmq.remoting.netty.NettyRemotingClient.createChannel(NettyRemotingClient.java:454)
    
        at com.alibaba.rocketmq.remoting.netty.NettyRemotingClient.getAndCreateNameserverChannel(NettyRemotingClient.java:400)
    
        at com.alibaba.rocketmq.remoting.netty.NettyRemotingClient.getAndCreateChannel(NettyRemotingClient.java:361)
    
        at com.alibaba.rocketmq.remoting.netty.NettyRemotingClient.invokeSync(NettyRemotingClient.java:616)
    
        at com.alibaba.rocketmq.client.impl.MQClientAPIImpl.getTopicRouteInfoFromNameServer(MQClientAPIImpl.java:1298)
    
        at com.alibaba.rocketmq.client.impl.factory.MQClientInstance.updateTopicRouteInfoFromNameServer(MQClientInstance.java:573)
    
        at com.alibaba.rocketmq.client.impl.factory.MQClientInstance.updateTopicRouteInfoFromNameServer(MQClientInstance.java:549)
    
        at com.alibaba.rocketmq.client.impl.factory.MQClientInstance.updateTopicRouteInfoFromNameServer(MQClientInstance.java:543)
    
        at com.alibaba.rocketmq.client.impl.factory.MQClientInstance$3.run(MQClientInstance.java:225)
    
        at com.alibaba.ttl.TtlRunnable.run(TtlRunnable.java:47)
    
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
    
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
    
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
    
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    
        at java.lang.Thread.run(Thread.java:745)
    

    Caused by: java.lang.NoClassDefFoundError: Could not initialize class io.netty.buffer.ByteBufAllocator

        at io.netty.channel.DefaultChannelConfig.<init>(DefaultChannelConfig.java:56)
    
        at io.netty.channel.DefaultChannelConfig.<init>(DefaultChannelConfig.java:69)
    
        at io.netty.channel.socket.DefaultSocketChannelConfig.<init>(DefaultSocketChannelConfig.java:46)
    
        at io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig.<init>(NioSocketChannel.java:486)
    
        at io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig.<init>(NioSocketChannel.java:484)
    
        at io.netty.channel.socket.nio.NioSocketChannel.<init>(NioSocketChannel.java:99)
    
        at io.netty.channel.socket.nio.NioSocketChannel.<init>(NioSocketChannel.java:88)
    
        at io.netty.channel.socket.nio.NioSocketChannel.<init>(NioSocketChannel.java:81)
    
        at io.netty.channel.socket.nio.NioSocketChannel.<init>(NioSocketChannel.java:74)
    
        at sun.reflect.GeneratedConstructorAccessor87.newInstance(Unknown Source)
    
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    
        at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    
        at java.lang.Class.newInstance(Class.java:442)
    
        at io.netty.channel.ReflectiveChannelFactory.newChannel(ReflectiveChannelFactory.java:38)
    
        ... 20 more
    

    (END)

    image.png

    Netty 版本冲突

    相关文章

      网友评论

          本文标题:线上多TCP连接定位

          本文链接:https://www.haomeiwen.com/subject/nqdapctx.html