io.netty.channel.epoll.EpollEventLoopGroup.setIoRatio()方法的使用及代码示例

x33g5p2x  于2022-01-19 转载在 其他  
字(10.0k)|赞(0)|评价(0)|浏览(170)

本文整理了Java中io.netty.channel.epoll.EpollEventLoopGroup.setIoRatio()方法的一些代码示例,展示了EpollEventLoopGroup.setIoRatio()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。EpollEventLoopGroup.setIoRatio()方法的具体详情如下:
包路径:io.netty.channel.epoll.EpollEventLoopGroup
类名称:EpollEventLoopGroup
方法名:setIoRatio

EpollEventLoopGroup.setIoRatio介绍

[英]Sets the percentage of the desired amount of time spent for I/O in the child event loops. The default value is 50, which means the event loop will try to spend the same amount of time for I/O as for non-I/O tasks.
[中]设置子事件循环中I/O所需时间的百分比。默认值为50,这意味着事件循环将尝试花费与非I/O任务相同的I/O时间。

代码示例

代码示例来源:origin: eclipse-vertx/vert.x

@Override
public EventLoopGroup eventLoopGroup(int nThreads, ThreadFactory threadFactory, int ioRatio) {
 EpollEventLoopGroup eventLoopGroup = new EpollEventLoopGroup(nThreads, threadFactory);
 eventLoopGroup.setIoRatio(ioRatio);
 return eventLoopGroup;
}

代码示例来源:origin: fengjiachun/Jupiter

@Override
public void setIoRatio(int workerIoRatio) {
  EventLoopGroup worker = worker();
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) worker).setIoRatio(workerIoRatio);
  }
}

代码示例来源:origin: fengjiachun/Jupiter

@Override
public void setIoRatio(int workerIoRatio) {
  EventLoopGroup worker = worker();
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) worker).setIoRatio(workerIoRatio);
  }
}

代码示例来源:origin: fengjiachun/Jupiter

@Override
public void setIoRatio(int bossIoRatio, int workerIoRatio) {
  EventLoopGroup boss = boss();
  if (boss instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) boss).setIoRatio(bossIoRatio);
  } else if (boss instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) boss).setIoRatio(bossIoRatio);
  }
  EventLoopGroup worker = worker();
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) worker).setIoRatio(workerIoRatio);
  }
}

代码示例来源:origin: fengjiachun/Jupiter

@Override
public void setIoRatio(int bossIoRatio, int workerIoRatio) {
  EventLoopGroup boss = boss();
  if (boss instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) boss).setIoRatio(bossIoRatio);
  } else if (boss instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) boss).setIoRatio(bossIoRatio);
  }
  EventLoopGroup worker = worker();
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) worker).setIoRatio(workerIoRatio);
  }
}

代码示例来源:origin: fengjiachun/Jupiter

@Override
public void setIoRatio(int workerIoRatio) {
  EventLoopGroup worker = worker();
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof NioEventLoopGroup) {
    ((NioEventLoopGroup) worker).setIoRatio(workerIoRatio);
  }
}

代码示例来源:origin: fengjiachun/Jupiter

@Override
public void setIoRatio(int workerIoRatio) {
  EventLoopGroup worker = worker();
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof NioEventLoopGroup) {
    ((NioEventLoopGroup) worker).setIoRatio(workerIoRatio);
  }
}

代码示例来源:origin: mpusher/mpush

@SuppressWarnings("unused")
private void createEpollServer(Listener listener) {
  EpollEventLoopGroup eventLoopGroup = new EpollEventLoopGroup(
      1, new DefaultThreadFactory(ThreadNames.T_GATEWAY_WORKER)
  );
  eventLoopGroup.setIoRatio(100);
  createServer(listener, eventLoopGroup, EpollDatagramChannel::new);
}

代码示例来源:origin: fengjiachun/Jupiter

@Override
public void setIoRatio(int bossIoRatio, int workerIoRatio) {
  EventLoopGroup boss = boss();
  if (boss instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) boss).setIoRatio(bossIoRatio);
  } else if (boss instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) boss).setIoRatio(bossIoRatio);
  } else if (boss instanceof NioEventLoopGroup) {
    ((NioEventLoopGroup) boss).setIoRatio(bossIoRatio);
  }
  EventLoopGroup worker = worker();
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof NioEventLoopGroup) {
    ((NioEventLoopGroup) worker).setIoRatio(workerIoRatio);
  }
}

代码示例来源:origin: fengjiachun/Jupiter

@Override
public void setIoRatio(int bossIoRatio, int workerIoRatio) {
  EventLoopGroup boss = boss();
  if (boss instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) boss).setIoRatio(bossIoRatio);
  } else if (boss instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) boss).setIoRatio(bossIoRatio);
  } else if (boss instanceof NioEventLoopGroup) {
    ((NioEventLoopGroup) boss).setIoRatio(bossIoRatio);
  }
  EventLoopGroup worker = worker();
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof NioEventLoopGroup) {
    ((NioEventLoopGroup) worker).setIoRatio(workerIoRatio);
  }
}

代码示例来源:origin: mpusher/mpush

private void createEpollServer(Listener listener) {
  EventLoopGroup bossGroup = getBossGroup();
  EventLoopGroup workerGroup = getWorkerGroup();
  if (bossGroup == null) {
    EpollEventLoopGroup epollEventLoopGroup = new EpollEventLoopGroup(getBossThreadNum(), getBossThreadFactory());
    epollEventLoopGroup.setIoRatio(100);
    bossGroup = epollEventLoopGroup;
  }
  if (workerGroup == null) {
    EpollEventLoopGroup epollEventLoopGroup = new EpollEventLoopGroup(getWorkThreadNum(), getWorkThreadFactory());
    epollEventLoopGroup.setIoRatio(getIoRate());
    workerGroup = epollEventLoopGroup;
  }
  createServer(listener, bossGroup, workerGroup, EpollServerSocketChannel::new);
}

代码示例来源:origin: mpusher/mpush

private void createEpollClient(Listener listener) {
  EpollEventLoopGroup workerGroup = new EpollEventLoopGroup(
      getWorkThreadNum(), new DefaultThreadFactory(ThreadNames.T_TCP_CLIENT)
  );
  workerGroup.setIoRatio(getIoRate());
  createClient(listener, workerGroup, EpollSocketChannel::new);
}

代码示例来源:origin: io.vertx/vertx-core

@Override
public EventLoopGroup eventLoopGroup(int nThreads, ThreadFactory threadFactory, int ioRatio) {
 EpollEventLoopGroup eventLoopGroup = new EpollEventLoopGroup(nThreads, threadFactory);
 eventLoopGroup.setIoRatio(ioRatio);
 return eventLoopGroup;
}

代码示例来源:origin: BazingaLyn/laopopo-rpc

@Override
public void init() {
  ThreadFactory workerFactory = new DefaultThreadFactory("netty.client");
  worker = initEventLoopGroup(nWorkers, workerFactory);
  
  bootstrap = new Bootstrap().group(worker);
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(100);
  } else if (worker instanceof NioEventLoopGroup) {
    ((NioEventLoopGroup) worker).setIoRatio(100);
  }
  bootstrap.option(ChannelOption.ALLOCATOR, allocator).option(ChannelOption.MESSAGE_SIZE_ESTIMATOR, DefaultMessageSizeEstimator.DEFAULT)
      .option(ChannelOption.SO_REUSEADDR, true).option(ChannelOption.CONNECT_TIMEOUT_MILLIS, (int) SECONDS.toMillis(3));
  bootstrap.option(ChannelOption.SO_KEEPALIVE, true).option(ChannelOption.TCP_NODELAY, true).option(ChannelOption.ALLOW_HALF_CLOSURE, false);
  if (writeBufferLowWaterMark >= 0 && writeBufferHighWaterMark > 0) {
    WriteBufferWaterMark waterMark = new WriteBufferWaterMark(writeBufferLowWaterMark, writeBufferHighWaterMark);
    bootstrap.option(ChannelOption.WRITE_BUFFER_WATER_MARK, waterMark);
  }
}

代码示例来源:origin: org.jupiter-rpc/jupiter-all

@Override
public void setIoRatio(int workerIoRatio) {
  EventLoopGroup worker = worker();
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) worker).setIoRatio(workerIoRatio);
  }
}

代码示例来源:origin: org.jupiter-rpc/jupiter-transport-netty

@Override
public void setIoRatio(int workerIoRatio) {
  EventLoopGroup worker = worker();
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) worker).setIoRatio(workerIoRatio);
  }
}

代码示例来源:origin: org.jupiter-rpc/jupiter-transport-netty

@Override
public void setIoRatio(int bossIoRatio, int workerIoRatio) {
  EventLoopGroup boss = boss();
  if (boss instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) boss).setIoRatio(bossIoRatio);
  } else if (boss instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) boss).setIoRatio(bossIoRatio);
  }
  EventLoopGroup worker = worker();
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) worker).setIoRatio(workerIoRatio);
  }
}

代码示例来源:origin: org.jupiter-rpc/jupiter-all

@Override
public void setIoRatio(int bossIoRatio, int workerIoRatio) {
  EventLoopGroup boss = boss();
  if (boss instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) boss).setIoRatio(bossIoRatio);
  } else if (boss instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) boss).setIoRatio(bossIoRatio);
  }
  EventLoopGroup worker = worker();
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) worker).setIoRatio(workerIoRatio);
  }
}

代码示例来源:origin: org.jupiter-rpc/jupiter-transport-netty

@Override
public void setIoRatio(int workerIoRatio) {
  EventLoopGroup worker = worker();
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof NioEventLoopGroup) {
    ((NioEventLoopGroup) worker).setIoRatio(workerIoRatio);
  }
}

代码示例来源:origin: org.jupiter-rpc/jupiter-all

@Override
public void setIoRatio(int workerIoRatio) {
  EventLoopGroup worker = worker();
  if (worker instanceof EpollEventLoopGroup) {
    ((EpollEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof KQueueEventLoopGroup) {
    ((KQueueEventLoopGroup) worker).setIoRatio(workerIoRatio);
  } else if (worker instanceof NioEventLoopGroup) {
    ((NioEventLoopGroup) worker).setIoRatio(workerIoRatio);
  }
}

相关文章

微信公众号

最新文章

更多