Slide 21
Slide 21 text
服务器程序地址重用
服务器程序启动时需要显式标注自身需要地址重用
C语言版:
int reuseaddr_on = 1;
if (setsockopt(listen_fd, SOL_SOCKET, SO_REUSEADDR, &reuseaddr_on, sizeof(reuseaddr_on)))
err(1, "setsockopt failed");
Java&Netty 版本
Java:
ServerSocket socket = new ServerSocket();
socket.setReuseAddress(true);
Netty 3.x
bootstrap.setOption("reuseAddress", true);
Netty 4.x/5.x
ServerBootstrap server = new ServerBootstrap();
server.group(bossGroup, workerGroup)
.option(ChannelOption.SO_REUSEADDR, true);
演示实际效果 ?