系统版本ubuntu 18.0.4
jdk版本 OpenJDK17U-jre_x64_linux_hotspot_17.0.3_7
压测工具 wrk
压测命令
./wrk -t12 -c200 -d10s http://localhost:8080
solon 版本1.9.1
代码
package com.demo;
import org.noear.solon.Solon;
import org.noear.solon.annotation.Controller;
import org.noear.solon.annotation.Mapping;
//Controller 模式:(mvc or rest-api)
@Controller
public class App{
public static void main(String[] args){
Solon.start(App.class,args);
}
@Mapping("/")
public String hello(){
return "Hello World";
}
}
springboot 代码
package com.example.bootdemo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import reactor.core.publisher.Mono;
@RestController
@SpringBootApplication
public class BootDemoApplication {
public static void main(String[] args) {
SpringApplication.run(BootDemoApplication.class, args);
}
@GetMapping("/")
public String test(){
return "Hello World!";
}
}
webflux代码
package com.example.bootdemo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import reactor.core.publisher.Mono;
@RestController
@SpringBootApplication
public class BootDemoApplication {
public static void main(String[] args) {
SpringApplication.run(BootDemoApplication.class, args);
}
// @GetMapping("/")
// public String test(){
// return "Hello World!";
// }
@GetMapping("/")
public Mono<String> test2(){
return Mono.just("Hello World!");
}
}
Solon smarthttp
70万左右
Solon web 46-50万
Solon undertow 44万
Springboot undertow 22万
Springboot webflux 16万