1: 单个服务, 如下代码的并发数是多少? 

    java -Xms1800m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=2048m -XX:MaxNewSize=512m -jar gateway-0.0.1-SNAPSHOT.jar

@GetMapping("/test/gogo")
public Mono<String> hahah11() throws InterruptedException {
return Mono.just("test");
}

2:请求线程为1,循环10万次,大家觉得会报错吗? 

微服务- 认识我们的服务2_短连接

 如下接果: 

微服务- 认识我们的服务2_长连接_02

 如果将线程数,改成10, 100, 300, 500 性能有多大改善呢? 

 如下为10: 

 微服务- 认识我们的服务2_业务逻辑_03

 

1: 改由长连接后: 在一线线程下,10万次请求

微服务- 认识我们的服务2_java_04

 

 2: 10个线程时,

微服务- 认识我们的服务2_业务逻辑_05

 

 3: 100个线程时,可以达到近1万的TPS

 微服务- 认识我们的服务2_java_06

 

 4: 300 个线程

微服务- 认识我们的服务2_业务逻辑_07

 

总结的一句话是:  http请求在短连接的请求时, 即使是最简单的请求,速度反而不是由http 业务逻辑绝顶的。甚至都不是由http建立连立, 一个完整的HTTP请求在 5毫秒。  速度反而是由释放TCP/IP决定。

这里需要的改进点是不是由长连接就可以解决呢?

 

如下反应的是一个完整的http请求的时长:

微服务- 认识我们的服务2_业务逻辑_08