Netty 负载测试TCP端口
我想加载测试我的Netty(TCP端口5000),Kafka,Storm项目。有人能指出一个产生负载的好工具吗。我看过Jmeter TCP sampler,但据我所知,它需要许多EC2实例来模拟200000个并发用户 我的Netty服务器正在接受端口5000上的短传入TCP请求,而不是http 提前感谢您可以使用基准测试工具。您没有提供项目的任何详细信息,但类似于:Netty 负载测试TCP端口,netty,load-testing,Netty,Load Testing,我想加载测试我的Netty(TCP端口5000),Kafka,Storm项目。有人能指出一个产生负载的好工具吗。我看过Jmeter TCP sampler,但据我所知,它需要许多EC2实例来模拟200000个并发用户 我的Netty服务器正在接受端口5000上的短传入TCP请求,而不是http 提前感谢您可以使用基准测试工具。您没有提供项目的任何详细信息,但类似于: wrk -H 'Host: localhost' \ -H 'Accept: text/html,application
wrk -H 'Host: localhost' \
-H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' \
-H 'Connection: keep-alive' \
-d 120 -c 256 -t 16 --pipeline 256 YOUR_TESTING_URL
可能适合您的情况。您可以使用Jmeter测试Tcp。或者你可以创建一个自定义类来生成netty客户端 客户端方法
@Override
public void run() {
// Configure the client.
EventLoopGroup group = new NioEventLoopGroup();
try {
Bootstrap b = new Bootstrap();
b.group(group)
.channel(NioSocketChannel.class)
.option(ChannelOption.TCP_NODELAY, true)
.handler(new ChannelInitializer<SocketChannel>() {
@Override
public void initChannel(SocketChannel ch) throws Exception {
ChannelPipeline p = ch.pipeline();
// p.addLast(new LoggingHandler(LogLevel.DEBUG));
p.addLast(new ClientsHandler2());
}
});
// Start the client.
ChannelFuture f = b.connect(HOST, PORT).sync();
// Wait until the connection is closed.
f.channel().closeFuture().sync();
} catch (InterruptedException e) {
e.printStackTrace();
} finally {
// Shut down the event loop to terminate all threads.
group.shutdownGracefully();
}
}
@覆盖
公开募捐{
//配置客户端。
EventLoopGroup=new NioEventLoopGroup();
试一试{
引导b=新引导();
b、 组(组)
.channel(NioSocketChannel.class)
.option(ChannelOption.TCP_NODELAY,true)
.handler(新的通道初始值设定项(){
@凌驾
public void initChannel(SocketChannel ch)引发异常{
ChannelPipeline p=通道管道();
//p.addLast(新的LoggingHandler(LogLevel.DEBUG));
p、 addLast(新客户端shandler2());
}
});
//启动客户端。
ChannelFuture f=b.connect(主机、端口).sync();
//等待连接关闭。
f、 通道().closeFuture().sync();
}捕捉(中断异常e){
e、 printStackTrace();
}最后{
//关闭事件循环以终止所有线程。
group.ShutdownGracely();
}
}