songofhack / solon

noear:: 一个高效的 Java 应用开发框架,新兴独立的开放生态。更快、更小、更简单!!!启动快 5 ~ 10 倍;qps 高 2~ 3 倍;运行时内存节省 1/3 ~ 1/2;打包可以缩到 1/2 ~ 1/10

Home Page:https://solon.noear.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


Solon v2.0.0

一个高效的 Java 应用开发框架,更小、更快、更简单!

https://solon.noear.org

Maven Apache 2 jdk-8 jdk-11 jdk-17 jdk-19
gitee star github star



启动快 5 ~ 10 倍;qps 高 2~ 3 倍;运行时内存节省 1/3 ~ 1/2;打包可以缩到 1/2 ~ 1/10


介绍

Solon 是一个高效的 Java 应用开发框架,也是一个插件丰富的开放生态。主框架0.1mb;组合不同的插件应对不同需求;方便定制;快速开发:

  • 克制、简洁、开放、生态
  • 支持jdk8、jdk11、jdk17、jdk19
  • Http、WebSocket、Socket 三种信号统一的开发体验(俗称:三源合一)
  • 支持“注解”与“手动”两种模式,按需自由操控
  • Not Servlet,可以适配任何基础通讯框架(所以:最小 0.3m 运行rpc架构)
  • 自建 IOC & AOP 容器,支持 Web、Data、Job、Remoting、Cloud 等任何开发场景
  • 集合 Handler + Context 和 Listener + Message 两种架构模式
  • 强调插件式扩展,可扩展可切换;适应不同的应用场景
  • 允许业务插件“热插”、“热拨”
  • 支持 GraalVm Native 打包
  • 不是 Spring,没有 Servlet,也无关 JavaEE;新兴独立的开放生态

生态架构图

Hello world:

<parent>
    <groupId>org.noear</groupId>
    <artifactId>solon-parent</artifactId>
    <version>2.0.0</version>
</parent>

<dependencies>
    <dependency>
        <groupId>org.noear</groupId>
        <artifactId>solon-web</artifactId>
    </dependency>
</dependencies>
//Handler 模式:
public class App{
    public static void main(String[] args){
        SolonApp app = Solon.start(App.class,args);
        
        app.get("/",(c)->c.output("Hello world!"));
    }
}

//Controller 模式:(mvc or rest-api)
@Controller
public class App{
    public static void main(String[] args){
        Solon.start(App.class,args);
    }
  
    //限定 Socket 方法类型
    @Socket
    @Mapping("/")
    public String hello(String name){
        return "Hello " + name;
    }
}

//Remoting 模式:(rpc)
@Mapping("/")
@Remoting
public class App implements HelloService{
    public static void main(String[] args){
        Solon.start(App.class,args);
    }

    @Override
    public String hello(){
        return "Hello world!";
    }
}

主框架及快速集成开发包:

主框架
组件 说明
org.noear:solon-parent 框架版本管理
org.noear:solon 主框架
org.noear:nami 伴生框架(做为solon remoting 的客户端)
快速集成开发包及相互关系
组件 说明
org.noear:solon-lib 快速开发基础集成包
org.noear:solon-api solon-lib + jlhttp boot;快速开发接口应用
org.noear:solon-web solon-api + freemarker + sessionstate;快速开发WEB应用
org.noear:solon-beetl-web solon-api + beetl + beetlsql + sessionstate;快速开发WEB应用
org.noear:solon-enjoy-web solon-api + enjoy + arp + sessionstate;快速开发WEB应用
org.noear:solon-rpc solon-api + nami;快速开发RPC应用
org.noear:solon-cloud solon-rpc + consul;快速开发微服务应用

快速了解 Solon 架构的材料:

《Solon 的想法与架构笔记》
《Solon 生态插件清单》

官网及相关示例:

特别感谢JetBrains对开源项目支持

JetBrains

About

noear:: 一个高效的 Java 应用开发框架,新兴独立的开放生态。更快、更小、更简单!!!启动快 5 ~ 10 倍;qps 高 2~ 3 倍;运行时内存节省 1/3 ~ 1/2;打包可以缩到 1/2 ~ 1/10

https://solon.noear.org

License:Apache License 2.0


Languages

Language:Java 99.4%Language:HTML 0.5%Language:FreeMarker 0.0%