OpenSolon 开源框架!(也称:Solon)

  OpenSolon 是新一代,Java 企业级应用开发框架。从零开始构建(No Java-EE),有灵活的接口规范与开放生态。采用商用友好的 Apache 2.0 开源协议,是“杭州无耳科技有限公司”开源的根级项目,是 Java 应用开发的生态基座(可替换美国博通公司的 Spring 生态)。

  • 追求: 快速、小巧、简洁
  • 提倡: 克制、高效、开放

      7年开源时间,累计代码提交1.6万次 ,近半年下载量1200万次。

  • 有透明可预期的《版本发布与长期支持计划(LTS)》
  • 有“【社区交流】”和“【企业服务】”双重技术支持

      同时支持运行时环境(不基于 java-ee 构建,所以可以同时兼容):

  • java8, java11, java17, java21, java25

      目前有8个主要的项目仓库:

  • solon,solon-expression,solon-flow,solon-ai,solon-cloud,solon-admin,solon-jakarta,solon-integration有什么特点(相对 Java Spring 方案)?

      OpenSolon 对国产算力非常友好,对 cpu 和 memory 的需求远低于同类方案。

      特点

      描述

      更高的计算性价比

      并发高 700%;内存省 50%

      更快的开发效率

      代码少;入门简单;启动(或调试重启)快 10倍

      更好的生产与部署体验

      打包小 90%

      更大的兼容范围

      非 java-ee 架构;同时支持 java8 ~ java25,graalvm native image

      最新的 techempower (第三方知名测试平台)测试数据:

  • 项目架构示意图(全场景应用开发支持)

      OpenSolon v3.7.3, v3.6.3 发布(Javaer 的福音)v3.7.3 更新说明

  • 插件 solon-flow 第五次预览
  • 新增 solon-server-tomcat-add-jsp 插件
  • 新增 solon-server-tomcat-add-websocket 插件
  • 新增 solon-server-tomcat-add-jsp-jakarta 插件
  • 新增 solon-server-tomcat-add-websocket-jakarta 插件
  • 新增 solon-cloud-telemetry 插件
  • 新增 opentelemetry-solon-cloud-plugin 插件
  • 添加 solon SolonProps:appVersion solon.app.version 配置支持
  • 添加 solon 接口版本的模式匹配支持(1.0+)
  • 添加 solon-scheduling IJobManager:jobAdd(name,scheduled,handler,data) 方法
  • 添加 solon-server-tomcat jsp 适配支持
  • 添加 solon-flow Node:task 硬编码能力(直接设置 TaskComponent),方便全动态场景
  • 添加 solon-flow Node:when 硬编码能力(直接设置 ConditionComponent),方便全动态场景
  • 添加 solon-flow Link:when 硬编码能力(直接设置 ConditionComponent),方便全动态场景
  • 添加 solon-flow StateResult ,在计算方面比 StatefulTask 更适合语义
  • 添加 solon-flow FlowContext:stop(),interrupt() 方法
  • 添加 solon-flow Graph 快捷创建方法
  • 添加 solon-flow FlowStatefulService:eval 方法
  • 添加 solon-server-tomcat-jakarta jsp 支持
  • 优化 solon-server DebugUtils 支持 jetty,tomcat,undertow jsp 调试目录构建
  • 优化 solon-server-undertow 请求大小控制
  • 优化 solon-server-jetty jsp 适配
  • 优化 solon-ai-core ToolSchemaUtil 扩展能力,支持注解处理定制(方便第三方集成)
  • 优化 solon-ai-mcp MCP 客户端与服务端异常链接状态 立即返回
  • 调整 solon-flow “链”概念改为“图”(更符合实际结构)
  • 调整 solon-flow Chain 更名为 Graph,ChainDecl 更名为 GraphDecl
  • 调整 solon-flow ChainInterceptor,ChainInvocation 更名为 FlowInterceptor,FlowInvocation
  • 调整 mybatis-solon-plugin 当配置的 mapper 没有对应注册时改为 warn 日志打印(之前为异常)
  • 修复 solon RoutingDefault 多个双星通配符冲突的问题(v3.7.2 出现)
  • 修复 solon-server-jetty-jakarta jsp 支持
  • 修复 solon-configuration-processor 失效的问题(v3.6.1 出现)
  • eggg 升为 1.0.10
  • snack4 升为 4.0.17
  • wood 升为 1.4.3
  • luffy 升为 1.11.1
  • folkmq 升为 1.7.13
  • fastjson2 升为 2.0.60
  • hutool 升为 5.8.41
  • smarthttp 升为 2.5.17
  • tomcat 升为 9.0.112
  • vert.x 升为 4.5.22
  • jetty.jakarta 升为 12.1.4
  • undertow.jakarta 升为 2.3.20.Final
  • logback.jakarta 升为 1.5.21

      solon-flow 兼容说明:

      现有应用如果没有用 ChainDecl 动态构建,不会受影响。。。如果有?需要换个类名。

      solon-flow 硬编码更简便:

      Graph graph = Graph.create("demo1", decl -> { decl.addActivity("n1").task(new Draft()).linkAdd("n2"); decl.addActivity("n2").task(new Review()).linkAdd("n3"); decl.addActivity("n3").task(new Confirm());});v3.6.6 更新说明(LTS 更新)

  • 优化 solon-ai-mcp MCP 客户端与服务端异常链接状态 立即返回
  • 调整 mybatis-solon-plugin 当配置的 mapper 没有对应注册时改为 warn 日志打印(之前为异常)
  • 修复 solon-configuration-processor 失效的问题(v3.6.1 出现)
  • snack4 升为 4.0.17核心项目仓库地址?
  • gitee:
  • gitcode:
  • github:官网?