创建项目
使用**Solon Initializr(**https://solon.noear.org/start/),创建基础项目。也可以使用 IDEA 的 Solon 插件,https://plugins.jetbrains.com/plugin/21380-solon,功能类似,用其中一种方式就可以了。
这里选择Gradle-Groovey,Java, 3.0.6,jar,jdk17,Solon Web。
运行
解压下载的demo.zip,用 IDEA 打开目录的 build.gradle
文件,弹窗选择open as project。
生成的代码已经包含了一个服务接口,无须额外编写代码。
等 IDEA 加载依赖完毕,即可直接运行 App.java的main函数。
打开浏览器,输入http://localhost:8080/hello
你的第一个 Solon 的 web 应用就完成了。
测试
默认生成的Demo 已经提供测试,可以点击后看到如下效果。
如果提示不存在任何测试的错误,调整 IDEA 的配置。
No matching tests found in any candidate test task.
Requested tests:
Test pattern features.HelloTest.hello in task :demo:test
项目结构
代码
默认生成的代码可以从下面的分支获取。
https://gitee.com/CrazyAirhead/porpoise-demo/tree/start-up/
性能
Solon 作者针对的提供了多个性能的测试对比,具体看链接 https://solon.noear.org/article/737 的文章。这里不逻辑所有的性能对比,只例出Spring VS Javalin VS Solon
的对比,另外测试只是做个参考。不同的环境、场景,效果不同。
测试记录
项目 | SpringBoot2 | SpringBoot3 | Javalin | Solon |
---|---|---|---|---|
运行时 | java 17 | java 17 | java 17 | java 17 |
测试前状态/内存 | 101.1Mb | 112.9Mb | 66.1Mb | 45.6Mb |
测试后状态/内存 | 996.3Mb | 326.9Mb | 457.3Mb | 369.2Mb |
测试后状态/并发 | 2万 | 2.6万 | 12万 | 17万 |
测试视频
https://www.bilibili.com/video/BV1nJ4m1h79P/
小结
通过 Solon Initializr 可以直接创建基础可运行的应用。