# nettyServer **Repository Path**: PingGrepClass/nettyServer ## Basic Information - **Project Name**: nettyServer - **Description**: 用户搜索服务 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-04-15 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README Nio、bio分别实现的客户名称查询性能测试分析 目录 一、测试结果分析 1 二、测试数据截图 2 2.1 nio测试截图 2 2.1.1 nio 测试,500线程*20次 3秒超时时间 2 2.1.2nio 测试,400线程*20次 3秒超时时间 3 2.1.3 nio 测试,200线程*20次 3秒超时时间 3 2.1.4 nio 测试,500线程*20次 不设置超时时间 4 2.2 Bio测试截图 4 2.2.1 bio 测试,500线程*20次 3秒超时时间 4 2.2.2 bio 测试,400线程*20次 3秒超时时间 5 2.2.3 bio 测试,200线程*20次 3秒超时时间 6 2.2.4 bio 测试,500线程*20次 不设置超时时间 6 三、修改变动 7 3.1 项目代码修改 7 3.2 保证可用性 8 四、启动方式: 8 参数:q=中企动力 错误率统计: 一、测试结果分析 1、线程数500 循环20次 设置超时时间 3秒 Nio:错误率6.92% Bio:错误率:18.64% 2、线程数400 循环 20次 设置超时间3秒 Nio:错误率2.24% Bio:错误率:14.66% 3、线程数200 循环 20次 设置超时时间3秒 Nio:错误率0.05% 1.90% 4、线程数500 循环次数 20 不设置超时时间 Nio:错误率 0.26% Bio:错误率 1.28% 从数据数据分析结果可知,当错误率相等时,nio的并发线程数是bio并发线程数的2倍! 二、测试数据截图 2.1 nio测试截图 2.1.1 nio 测试,500线程*20次 3秒超时时间 2.1.2nio 测试,400线程*20次 3秒超时时间 2.1.3 nio 测试,200线程*20次 3秒超时时间 2.1.4 nio 测试,500线程*20次 不设置超时时间 2.2 Bio测试截图 2.2.1 bio 测试,500线程*20次 3秒超时时间 2.2.2 bio 测试,400线程*20次 3秒超时时间 2.2.3 bio 测试,200线程*20次 3秒超时时间 2.2.4 bio 测试,500线程*20次 不设置超时时间 三、修改变动 3.1 项目代码修改 需要修改两个js,4行代码,如下截图: 3.2 保证可用性 线上需增加两台服务器供netty实现的搜索服务使用,及相关的负载均衡配置。 四、启动方式: java -classpath -Xms3g -Xmx3g -Xss256k -XX:NewSize=1024M -XX:MaxNewSize=1024M -XX:NewRatio=2 -XX:PermSize=128m -XX:MaxPermSize=512m -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+HeapDumpOnOutOfMemoryError loServer-jar-with-dependencies.jar com.server.ExampleAction