(资料图)
一个更现代感的 Java 应用开发框架:更快、更小、更自由。没有 Spring,没有 Servlet,没有 JavaEE;独立的轻量生态。主框架仅 0.1 MB。
@Controllerpublic class App { public static void main(String[] args) { Solon.start(App.class, args); } @Get @Socket @Mapping("/hello") public String hello(@Param(defaultValue = "java") String name) { return String.format("Hello %s!", name); }}
入门探索视频(用户录制):
相对于 Spring Boot 和 Spring Cloud 的项目:
启动快 5 ~ 10 倍。
(更快)qps 高 2~ 3 倍。
(更高)运行时内存节省 1/3 ~ 1/2。
(更少)打包可以缩小到 1/2 ~ 1/10;比如,300Mb 的变成了 23Mb。
(更小)基于服务 name 进行注册发现 与 k8s svc 相互对应 支持 Service Mesh 架构部署方案 同时支持 jdk8, jdk11, jdk17, jdk19 没有 Spring,没有 Servlet,没有 JavaEE;独立的轻量生态
本次更新:
新增 solon.web.webdav 插件 (类似于网盘的能力) 新增 solon.logging.simple 插件(替代 solon.logging.impl) 新增 solon.scheduling 插件 新增 solon.scheduling.simple 插件(替代 solon.schedule;更标准化) 新增 solon.scheduling.quartz 插件(替代 quartz-solon-plugin;更标准化) 新增 quartz-solon-cloud-plugin 插件 插件 quartz-solon-plugin 增加函数执行支持,增加持久化和远程管理支持 插件 local-solon-cloud-plugin 添加 server 配置支持(只能指向本地,用于存放数据) 插件 solon.web.staticfiles 允许 maxAge=-1 配置(从而取消 URLConnection 的缓存) 插件 solon.web.staticfiles 增加资源仓库预热支持 插件 solon.boot.jlhttp 调整server代码,不再限制 method (用于支持 webdav) 插件 solon.boot 调整 coreTheads,maxTheads 配置,支持部数模式 x16(表示cpu核数的16倍) 增加 enableWebSocketMvc,enableSocketMvc 开关控制 增加 mybatis-solon-plugin 插件对 Mappers 有无的检查并提示 增加 DownloadedFile,UploadedFile 获取属性,原字段标为弃用(后面会改为私有) 调整 solon.cache.* 插件,开放 CacheService 内部的 client 调整 ctx.body() 优先采用 request content-type 上的编码 修复 servletContext 使用 cookieRemove() 移除 cookie 时,遗留空值 cookie 的问题 修复 调试模式下,静态文件会缓存的问题 测试 nami 做为注解式 http 客户端的使用 升级 smart-http 为 1.1.19 升级 wood 为 1.0.7 升级 sqltoy 为 5.2.25
进一步了解 Solon:
《想法与架构笔记》 《生态预览》 《与 Spring Boot 的区别?》 《与 Spring Cloud 的区别?》
项目仓库:
gitee:https://gitee.com/noear/solon github:https://github.com/noear/solon