1、所谓更快:
solon | 大小 | QPS |
solon-boot-jdkhttp(bio) | 0.2m | 6.4万左右 |
solon-boot-jlhttp(bio) | 0.3m | 13.2万左右 |
solon-boot-jetty(nio, 支持servlet api) | 2.2m | 12.3万左右 |
solon-boot-undertow(nio, 支持servlet api) | 4.5m | 12.0万左右 |
solon-boot-smarthttp(aio) [国产] | 0.7m | 16.6万左右 |
spring boot | 大小 | QPS |
spring-boot-starter-tomcat | 16.1m | 3.2万左右 |
spring-boot-starter-jetty | 16m | 3.7万左右 |
spring-boot-starter-undertow | 16.8m | 4.4万左右 |
2、所谓更小:
- 打包小 50% ~ 90%
- 内存省 50%
- 最小 Web 完整开发单位 1Mb(相比 Springboot 项目包,小到可以乎略不计了)
3、所谓更简单:
- 代码操控:除了注解模式之外,还可以按需手动(不用绕,更直接)。
//手动获取配置(Props 为 Properties 增强版)
Props db = Solon.cfg().getProp("db");
//手动获取容器里的Bean
UserService userService = Solon.context().getBean(UserService.class);
//手动监听http post请求
Solon.app().post("/user/update", x-> userService.updateById(x.paramMap()));
//手动添加个RPC服务
Solon.app().add("/rpc/", HelloServiceImpl.class, true);
//手动获取一个RPC服务消费端
HelloService helloService = Nami.builder().create(HelloService.class);
//手动为容器添加组件
Solon.context().wrapAndPut(DemoService.class);
可以用 solon-web 这样的快速开发集成包。也可以按项目需要选择不同的插件组装,比如:为非 Solon 项目添加 solon-boot-jdkhttp,0.3Mb 即可让项目实现 http + mvc 支持。