小李带你写基于netty的webSocket项目,轻松过压测 源码已提交GitHub---------------------源码注释超详细

总算是破了我的github处,jmeter压测过了,程序没崩用来显示的Chrome崩了。。。

Github地址:https://github.com/LikeAngPlease/webSocket 

具体怎么用的大家看下readme吧,在这里不啰嗦了。讲些有用的 

这个注释详细的,我感觉没啥可说的了,不懂的私信问我吧。。。

package org.ang.service;


import io.netty.bootstrap.ServerBootstrap;
import io.netty.channel.ChannelFuture;
import io.netty.channel.ChannelInitializer;
import io.netty.channel.ChannelOption;
import io.netty.channel.EventLoopGroup;
import io.netty.channel.group.ChannelGroup;
import io.netty.channel.group.DefaultChannelGroup;
import io.netty.channel.nio.NioEventLoopGroup;
import io.netty.channel.socket.SocketChannel;
import io.netty.channel.socket.nio.NioServerSocketChannel;
import io.netty.handler.codec.http.HttpObjectAggregator;
import io.netty.handler.codec.http.HttpServerCodec;
import io.netty.handler.stream.ChunkedWriteHandler;
import io.netty.handler.timeout.IdleStateHandler;
import io.netty.util.concurrent.ImmediateEventExecutor;
import org.ang.handler.AngIdleStateHandler;
import org.ang.handler.BusinessWebSocketHandler;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Value;

import java.util.concurrent.TimeUnit;


/**
 * @author Liang
 */
public class NettyServer implements Runnable {
    @Value("${readerIdleTime}")
    int readerIdleTime;
    private final int port;

    private static final Logger log = LogManager.getLogger(NettyServer.class);
    private final ChannelGroup group = new DefaultChannelGroup(ImmediateEventExecutor.INSTANCE);

    public NettyServer(int port) {
        this.port = port;
    }

    public void start() throws Exception {
        //创建两个线程组 含有的子线程NioEventLoop的个数默认为CUP核数的二倍  bossGroup 只负责处理请求  workGroup会负责和客户端的业务处理
        EventLoopGroup bossGroup = new NioEventLoopGroup();
        EventLoopGroup workGroup = new NioEventLoopGroup();
        try {
            //创建服务端启动对象
            ServerBootstrap sb = new ServerBootstrap();
            //初始化服务器队列连接大小
            sb.option(Chan
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

可爱小昂昂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值