2017-10-10 90 views
0

在Windows 只有,我抛出这个INFO级堆栈跟踪每秒一GRPC服务器:再次为什么gRPC每秒仅在Windows上抛出“建立的连接被主机中的软件中止”?

2017-10-09T20:11:00,366 - INFO - [grpc-default-worker-ELG-1-13:io.grpc.netty.NettyServerTransport:[email protected]] - {} - Transport failed 
java.io.IOException: An established connection was aborted by the software in your host machine 
    at sun.nio.ch.SocketDispatcher.read0(Native Method) ~[?:1.8.0_131] 
    at sun.nio.ch.SocketDispatcher.read(Unknown Source) ~[?:1.8.0_131] 
    at sun.nio.ch.IOUtil.readIntoNativeBuffer(Unknown Source) ~[?:1.8.0_131] 
    at sun.nio.ch.IOUtil.read(Unknown Source) ~[?:1.8.0_131] 
    at sun.nio.ch.SocketChannelImpl.read(Unknown Source) ~[?:1.8.0_131] 
    at io.netty.buffer.PooledUnsafeDirectByteBuf.setBytes(PooledUnsafeDirectByteBuf.java:288) ~[ ] 
    at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1106) ~[netty-buffer-4.1.14.Final.jar:4.1.14.Final] 
    at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:372) ~[netty-transport-4.1.14.Final.jar:4.1.14.Final] 
    at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:123) [netty-transport-4.1.14.Final.jar:4.1.14.Final] 
    at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:645) [netty-transport-4.1.14.Final.jar:4.1.14.Final] 
    at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:580) [netty-transport-4.1.14.Final.jar:4.1.14.Final] 
    at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:497) [netty-transport-4.1.14.Final.jar:4.1.14.Final] 
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:459) [netty-transport-4.1.14.Final.jar:4.1.14.Final] 
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858) [netty-common-4.1.14.Final.jar:4.1.14.Final] 
    at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:138) [netty-common-4.1.14.Final.jar:4.1.14.Final] 
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_131] 

这可能是登录https://github.com/grpc/grpc-java/issues/1768

同样的事情,我得到这个仅在Windows上出现错误!

该应用程序似乎功能正常,无论此问题。

当我用io.grpc.Server启动一个简单的“hello world”应用程序时,我没有看到这个INFO堆栈跟踪。

但是,当我使用我的真实应用程序打开一个grpc服务器和jetty服务器之间的双向http2流连接,该应用程序在应用程序期间保持打开状态...我每秒收到一次该消息淹没我的日志。

NettyServerTransport登录为WARN级别是否安全?或者我应该担心这个信息的频率?

回答

0

我发现这条消息是因为我们使用监视的第三方Java应用程序上的tcp心跳检查器而发生的,以查看我的服务是否已启动。

它使InetSocketAddress(ip, port)请求检查以查看http2端口是否仍在响应。

每次它执行此操作(仅在Windows上)时,会抛出烦人的堆栈跟踪。寻找原因。

发起创建:https://github.com/nddipiazza/grpc-java-bidirectional-streaming-example

相关问题