具有 setReuseAddress(true) 的 gRPC Java 服务器?
gRPC Java server with setReuseAddress(true)?
我正在使用 Java 编写的 gRPC 服务器上工作。它使用 NettyServerBuilder
到 start/run 服务器。我想知道如何为服务器设置 setReuseAddress(true)
,以便它可以快速重启(在崩溃或维护重启时。)
这是当前启动:
import io.grpc.Server;
import io.grpc.netty.shaded.io.grpc.netty.NettyServerBuilder;
//...
private Server server;
//...
server = NettyServerBuilder
.forPort(port)
.permitKeepAliveWithoutCalls(true)
.permitKeepAliveTime(5, TimeUnit.SECONDS)
.addService(this.queryService)
.addService(this.commandService)
.build();
这应该可以解决问题:
Server server = NettyServerBuilder
.forPort(port)
// ...
.withChildOption(ChannelOption.SO_REUSEADDR, true)
.build();
我正在使用 Java 编写的 gRPC 服务器上工作。它使用 NettyServerBuilder
到 start/run 服务器。我想知道如何为服务器设置 setReuseAddress(true)
,以便它可以快速重启(在崩溃或维护重启时。)
这是当前启动:
import io.grpc.Server;
import io.grpc.netty.shaded.io.grpc.netty.NettyServerBuilder;
//...
private Server server;
//...
server = NettyServerBuilder
.forPort(port)
.permitKeepAliveWithoutCalls(true)
.permitKeepAliveTime(5, TimeUnit.SECONDS)
.addService(this.queryService)
.addService(this.commandService)
.build();
这应该可以解决问题:
Server server = NettyServerBuilder
.forPort(port)
// ...
.withChildOption(ChannelOption.SO_REUSEADDR, true)
.build();