不妨试试更快更小更灵活Java开发框架Solon

@
目录

  • 概述
    • 定义
    • 性能
    • 架构
  • 实战
    • Solon Web示例
    • Solon Mybatis-Plus示例
    • Solon WebSocket示例
    • Solon Remoting RPC示例
    • Solon Cloud Nacos示例
概述定义
Solon 官网地址 https://solon.noear.org/
Solon GitHub源码地址 https://github.com/noear/solon
Solon for java,一个更现代感的,轻量级应用开发框架,崇尚克制、简洁、开放、生态设计理念 。最新版本为1.10.7
Solon从项目启动以来,参考过大量前人的作品 。尤其是 Spring Boot、jFinal、Javalin 和 Asp.Net,吸取了诸多优点,且避开很多繁重的设计 。历时多年,内核始终保持 0.1Mb 的身材,超高的跑分,良好而自由的使用体验 。
目前支持jdk8、jdk11、jdk17、jdk19四个大版本,开发定制方便,可通过组合不同的插件快速开发不同的需求,开发人员几乎可使用与SpringBoot相似的开发方式 。其Solon Cloud 为一系列分布式开发的接口标准和配置规范,相当于DDD模式里的防腐层概念,是 Solon 的微服务架构模式开发解决方案 。在开发使用上官方也提供其与SpringBoot、SpringCloud、Dubbo的详细区别,使用时查阅官方文档即可 。
性能Solon 根据官方提供数据,比传统的Java应用特别是Spring生态开发的应用启动快 5 ~ 10 倍,qps 高 2~ 3 倍,运行时内存节省 1/3 ~ 1/2,打包可以缩到 1/2 ~ 1/10 。因此成为更现代感的应用开发框架,实现更快、更小、更少、更自由!
  • 快:Qps 可达10万之多
  • 小:内核 0.1Mb,最小 Web 完整开发单位 1Mb(相比Springboot项目包,小到可以乎略不计了)
  • 自由:代码操控自由,除了注解模式之外,还可以按需手动;框架选择自由:可以用 solon-web 这样的快速开发集成包 。也可以按项目需要选择不同的插件组装,比如:为非Solon项目添加solon.boot.jlhttp,0.2Mb 即可让项目实现 http+mvc 支持 。

不妨试试更快更小更灵活Java开发框架Solon

文章插图
架构
  • 缘起统一的处理架构想法(俗称:三源合一):Http、Socket、WebSocket 。不同的通讯信号,进行统一架构处理,且小巧 。对于 Socket 和 WebSocket,在原 消息+监听 的模式之外增加了 上下文+处理 模式

不妨试试更快更小更灵活Java开发框架Solon

文章插图
  • 关于应用内在的启动过程(即:应用的生命周期):串行的处理过程(含四个事件扩展点 + 两个函数扩展点)

不妨试试更快更小更灵活Java开发框架Solon

文章插图
  • 请求的处理过程

不妨试试更快更小更灵活Java开发框架Solon

文章插图
  • Ioc & Aop 内部结构
    不妨试试更快更小更灵活Java开发框架Solon

    文章插图
  • 现有家簇成员图谱

不妨试试更快更小更灵活Java开发框架Solon

文章插图
实战Solon Web示例下载官方的helloworld示例 体验下Solon 轻量和快 。此外还可以下载官网提供丰富的配套示例:
项目地址说明solon-exampleshttps://gitee.com/noear/solon-examples配套"学习/科目学习"进行演示下载完解压后导入Idea中,是个标准的maven项目,pom文件引入solon的父依赖和核心依赖
<dependency><groupId>org.noear</groupId><artifactId>solon-web</artifactId></dependency>一个配置文件app.yml,一个启动类DemoApp,是不是和SpringBoot很相似,Solon 是一个容器型的应用开发框,在main方法中使用Solon.start启动 。app.yml内容如下:
server.port: 8080solon.app:name: demoappgroup: demo

经验总结扩展阅读