Solon 是一个微型的Java开发框架。项目从2018年启动以来,参考过大量前人作品;历时两年,4000多次的commit;内核保持0.1m的身材,超高的跑分,良好的使用体验。支持:RPC、REST API、MVC、WebSocket、Socket 等多种开发模式。

Solon 强调:克制 + 简洁 + 开放的原则;力求:更小、更快、更自由的体验。

替代?那有什么异同之处?

《Solon 特性简集,相较于 Springboot 有什么区别?》

《Solon 的架构笔记》

所谓更小:

内核0.1m,最小开发单位0.2m(相比Dubbo、Springboot项目包,小到可以乎略不计)

所谓更快:

本机helloworld测试,Qps可达12万之多。可参考:《helloworld_wrk_test

所谓更自由:(代码操控自由)

// 除了注解模式之外,还可以按需手动
//
//手动获取配置(Props 为 Properties 增强版)
Props db = Solon.cfg().getProp("db"); //手动获取容器里的Bean
UserService userService = Aop.get(UserService.class); //手动监听http post请求
Solon.global().post("/user/update", x-> userService.updateById(x.paramMap())); //手动添加个RPC服务
Solon.global().add("/rpc/", HelloService.class, true); //手动获取一个RPC服务消费端
HelloService helloService = Nami.builder().create(HelloService.class);

本次版本主要变化:

1、增加 luffy-solon-plugin 组件,实现与动态语言混合执行能力

//
// file: resources/luffy/hello.js
//
let name = ctx.param("name"); if(!name){
name = "world";
} return `Hello ${name}!`; // 浏览器打开: http://localhost:8080/hello.js
// Java调用:CallUtil.callFile("/hello.js", null);

目前已适配的动态语言

  • python
  • ruby
  • javascript
  • groovy
  • lua
  • graaljs

2、Solon cloud 增加云端黑白名单接口 CloudListService

//手动应用
//
if(CloudClient.list().inList("blacklist","ip","127.0.0.1")){
//提示
} //注解应用
@NotBlanklist
@Mapping("demo1")
public void demo1(){
//业务处理
} @Withelist
@Mapping("demo2")
public void demo2(){
//业务处理
}

3、增加 solon.logging 的异常格式化支持

@Slf4j
public class DemoService{
public void demo(){
try{
//业务处理
}catch(Exception ex){
log.error("{}\r\n{}", "error:", ex);
}
}
}

4、增加 solon.extend.sessionstate.jwt 组件通过 header 传输的支持

附:入门示例

最新文章

  1. flume的使用
  2. [转]俞敏洪:我和马云就差了8个字... [来自: news.mbalib.com]
  3. 研究Dropbox Server端文件系统
  4. JVM的内存管理机制
  5. 人体时钟hone hone clock
  6. Android Material Design-TabLayout的使用
  7. [转]Centos6.5安装配置keepalived
  8. 【iOS开发-图层】自己定义图层的两种方式
  9. oracle 非数字型转数字型
  10. Git时光机穿梭之工作区和暂存区
  11. 一道叉姐的AC自动机鬼题
  12. asp.net core webapi/website+Azure DevOps+GitHub+Docker
  13. note 5 二分法求平方根,素数,回文数
  14. JAVA自学笔记17
  15. 中文WebFont解决方案Font-Spider(字蛛)
  16. [CB]IPv6 在中国 - 大规模部署进行中 进展明显
  17. m0n0wall 详细介绍
  18. (原)ubuntu中安装tensorflow
  19. HDU 1714 math
  20. GDI+ 怎样将图片绘制成圆形的图片

热门文章

  1. Regular Expression & rgb2hex
  2. You, Me & SVG!
  3. svg insert shape string bug
  4. macOS & Nginx
  5. Codeforces 1485F Copy or Prefix Sum
  6. 02.Fancy Indexing
  7. 第48天学习打卡(CSS)
  8. QT实现输入框与下拉框提示并可模糊匹配
  9. Docker 一次性进程与对话进程
  10. go http库 设置代理