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

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

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

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

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

  • java8, java11, java17, java21, java25, java26

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

代码仓库 描述
/opensolon/solon Solon ,主代码仓库
/opensolon/solon-examples Solon ,官网配套示例代码仓库
/opensolon/solon-expression Solon Expression ,代码仓库
/opensolon/solon-flow Solon Flow ,代码仓库
/opensolon/solon-ai Solon Ai ,代码仓库
/opensolon/solon-cloud Solon Cloud ,代码仓库
/opensolon/solon-admin Solon Admin ,代码仓库
/opensolon/solon-integration Solon Integration ,代码仓库
/opensolon/solon-java17 Solon Java17 适配仓库(base java17)
/opensolon/solon-java25 Solon Java25 适配仓库(base java25)
/opensolon/solon-gradle-plugin Solon Gradle ,插件代码仓库
/opensolon/solon-idea-plugin Solon Idea ,插件代码仓库
/opensolon/solon-vscode-plugin Solon VsCode ,插件代码仓库

有什么特点(相对 Java Spring 方案)?

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

特点 描述
更高的计算性价比 并发高 700%;内存省 50%
更快的开发效率 代码少;入门简单;启动(或调试重启)快 10倍
更好的生产与部署体验 打包小 90%
更大的兼容范围 非 java-ee 架构;同时支持 java8 ~ java26,graalvm native image

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

  • https://www.techempower.com/benchmarks/#hw=ph&test=json§ion=data-r23
  • https://www.techempower.com/benchmarks/#hw=ph&test=plaintext§ion=data-r23

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

/solon v3.10.4 更新说明

  • 新增 solon-serialization-javabin 插件(统一 JavabinSerializer 管理)
  • 添加 solon-cache-spymemcached MemCacheService.cacheKeyHead 方法(修改缓存头)
  • 添加 solon-cache-redisson RedissonCacheService.cacheKeyHead 方法(修改缓存头)
  • 添加 solon-cache-jedis RedisCacheService.cacheKeyHead 方法(修改缓存头)
  • 添加 solon JavaUtil.IS_MAC 字段
  • 添加 solon MultiMap.flags 机制,更好的支持 args 解析
  • 添加 solon ParamWrap.getMethodWrap 属性
  • 添加 solon-parent maven-surefire-plugin 插件版本管理
  • 添加 nami NamiFilter(替代 Filter)更好表意
  • 调整 solon-sessionstate-jedis 启用新的 JavabinSerializer
  • 调整 solon-cache-jedis 启用新的 JavabinSerializer
  • 调整 RunUtil 恢复 parallel 方法(之前标为弃用)
  • 调整 Log4j2Plugin,LogbackPlugin ,取消 doLoadUrl 重载
  • 修复 solon-config-snack3 不能通过属性反序列化外部扩展包里的类问题
  • 修复 solon-config-snack4 不能通过属性反序列化外部扩展包里的类问题
  • 修复 solon-net-httputil OkHttp 请求体封装问题,转为对应编码字节流
  • reactor-core 升为 3.8.5
  • redisx 升为 1.8.5
  • eggg 升为 1.0.12
  • snack4 升为 4.0.46
  • log4j 升为 2.25.4

/solon-ai v3.10.4 更新说明

solon-ai 发布智能体综合示例项目(可直接用于生产或定制):

具体更新:

  • 添加 solon-ai-agent 动态切换 llm 支持(支持不同会话,在各自请求时切换)
  • 添加 solon-ai-harness 重试次数配置支持
  • 添加 solon-ai-harness lsp 功能
  • 添加 solon-ai-harness HarnessProperties.disallowedTools 配置支持(全局禁用工具配置)
  • 添加 solon-ai-harness HarnessProperties.agentPools(子代理池) 配置支持
  • 添加 solon-ai-harness HarnessProperties.systemPrompt 配置支持(替代之前的 AGENT.md 预设处理,由外部定制)
  • 优化 solon-ai-core embedding 配置默认选项的能力(之前只能在请求时添加)
  • 优化 solon-ai-core ChatRequestDesc.internalStream 添加流接收超时处理(避免因 llm 服务原因一直卡着)
  • 优化 solon-ai-dialect-anthropic anthropic 方言的异常兼容处理
  • 优化 solon-ai-dialect-openai openai-response 方言的异常兼容处理
  • 优化 solon-ai-agent 中断传递处理
  • 优化 solon-ai-agent ActionTask onAction 日志
  • 优化 solon-ai-agent retrying 中断处理(这前的 task 内部的 stream 可能会中断传递)
  • 优化 solon-ai-agent AgentSession.updateSnapshot 添加锁机制
  • 优化 solon-ai-skill-lsp 重构 LspSkill 实现(之前名为 LspTool)
  • 优化 solon-ai-skill-cli ExpertSkill 引导词
  • 优化 solon-ai-skill-cli TerminalSkill 安全引导词
  • 优化 solon-ai-skill-sys 从 cli 同步 ProcessExecutor
  • 优化 solon-ai-harness HarnessEngine 扩展机制(支持为子代理扩展,通过名字识别)
  • 调整 solon-ai-harness ReActAgentExtension 更名为 ReActAgentExtension
  • 调整 solon-ai-harness 切换 llm 的机制,并取消 switchMainModel 方法(有自由的机制了)
  • 调整 solon-ai-harness TerminalSkillProxy 转到 solon-ai-skill-cli
  • 修复 solon-ai-skill-toolgateway ToolGatewaySkill call_tool 不能传递 toolContext 的问题
  • 修复 solon-ai-core AbstractChatDialect reasoning_field_name 可能传递中断的问题
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐