Java 轻量开发框架 Solon 1.4.4 发布 ,完善分布式任务规范
Solon 是一个轻量的Java基础开发框架。强调,克制 + 简洁 + 开放的原则;力求,更小、更快、更自由的体验。支持:RPC、REST API、MVC、Job、Micro service、WebSocket、Socket 等多种开发模式。
Solon Cloud 是一系列的接口标准和配置规范,算是 Solon 的分布式开发套件方案。
快速了解Solon的材料:
《Solon 特性简集,相较于 Springboot 有什么区别?》
《Solon Cloud 分布式服务开发套件清单,感觉受与 Spring Cloud 的不同》
所谓更小:
内核0.1m,最小的接口开发单位0.2m(相较于 Dubbo、Springboot 的依赖包,小到可以乎略不计)
所谓更快:
本机http 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);
//手动为容器添加组件
Aop.wrapAndPut(DemoService.class);
本次版本主要变化:
1、增加 xxl-job-solon-plugin 插件,并适配CloudJob规范
配置示例
solon.app:
name: demojob
group: demo
solon.cloud.xxljob:
server: "http://localhost:8093/xxl-job-admin"
应用示例
//1.注解模式
@Component
public class JobBeanDemo2 {
//Solon cloud job 注解
@CloudJob("JobBeanDemo2-1")
public void test(){
System.out.println("JobBeanDemo2-1");
}
//原生注解
@XxlJob("JobBeanDemo2-2")
public void test2(){
System.out.println("JobBeanDemo2-2");
}
}
//2.手动模式
CloudClient.job().register("test2", c -> {
System.out.println("Hello test2");
});
2、为 water-solon-plugin 插件,增加CloudJob规范适配
配置示例
solon.app:
name: demojob
group: demo
solon.cloud.water:
server: water
应用示例
//1.注解模式
@Component
public class JobBeanDemo2 {
@CloudJob("JobBeanDemo2-1")
public void test(){
System.out.println("JobBeanDemo2-1");
}
}
//2.手动模式
CloudClient.job().register("test2", c -> {
System.out.println("Hello test2");
});
附:项目地址
附:入门示例
- Solon 入门教程示例:https://gitee.com/noear/solon_demo
- Solon Rpc 入门教程示例:https://gitee.com/noear/solon_rpc_demo
- Solon Cloud 入门教程示例:https://gitee.com/noear/solon_cloud_demo
- Solon 进阶教程示例:https://gitee.com/noear/solon_advance_demo
Java 轻量开发框架 Solon 1.4.4 发布 ,完善分布式任务规范的更多相关文章
- 对标 Spring Boot & Cloud ,轻量框架 Solon 1.4.8 发布
Solon 是一个轻量的Java基础开发框架.强调,克制 + 简洁 + 开放的原则:力求,更小.更快.更自由的体验.支持:RPC.REST API.MVC.Job.Micro service.WebS ...
- 对标 Spring Boot & Cloud ,轻量框架 Solon 1.4.12 发布
Solon 是一个轻量的Java基础开发框架.强调,克制 + 简洁 + 开放的原则:力求,更小.更快.更自由的体验.支持:RPC.REST API.MVC.Job.Micro service.WebS ...
- 对标 Spring Boot & Cloud ,轻量框架 Solon 1.4.14 发布
Solon 是一个轻量的Java基础开发框架.强调,克制 + 简洁 + 开放的原则:力求,更小.更快.更自由的体验.支持:RPC.REST API.MVC.Job.Micro service.WebS ...
- 对标 Spring Boot & Cloud ,轻量框架 Solon 1.5.8 发布
Solon 是一个轻量的Java基础开发框架.强调,克制 + 简洁 + 开放的原则:力求,更小.更快.更自由的体验.支持:RPC.REST API.MVC.Job.Micro service.WebS ...
- 用 Java?试试国产轻量的 Solon v1.11.4(带视频)
一个更现代感的 Java 应用开发框架:更快.更小.更自由.没有 Spring,没有 Servlet,没有 JavaEE:独立的轻量生态.主框架仅 0.1 MB. @Controller public ...
- 对标 Spring Boot & Cloud ,轻量框架 Solon 1.5.2 重要发布
Solon 是一个轻量的Java基础开发框架.强调,克制 + 简洁 + 开放的原则:力求,更小.更快.更自由的体验.支持:RPC.REST API.MVC.Job.Micro service.WebS ...
- OSCHina技术导向:Java轻量web开发框架——JFinal
JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速.代码量少.学习简单.功能强大.轻量级.易扩展.Restful.在拥有Java语言所有优势的同时再拥有ru ...
- win8.1 cygwin编译java轻量虚拟机avian
1.背景 昨天在网上看到别人用aauto写本地小程序写的很爽,我觉得如果java的jre能小一点,凭借java庞大的第三方类库写小工具也还算不错的.本人就经常用eclipse+一些commons包写些 ...
- Java 超新星开源项目 Solon v1.10.10 发布
一个更现代感的 Java 应用开发框架:更快.更小.更自由.主框架仅 0.1 MB.Helloworld: @Controller public class App { public static v ...
- 轻量易用的微信Sdk发布——Magicodes.Wx.Sdk
概述 最简洁最易于使用的微信Sdk,包括公众号Sdk.小程序Sdk.企业微信Sdk等,以及Abp VNext集成. GitHub地址:https://github.com/xin-lai/Magico ...
随机推荐
- idea debug jboss 应用遇到到问题记录
idea run Jboss是没有问题的,能启动Jboss成功:但是debug Jboss时,报ERROR: Cannot load this JVM TI agent twice, check yo ...
- [Python急救站课程]蟒蛇的绘制
Python的英文是有蟒蛇的意思,用Python画一条蟒蛇试试吧 一.普通蟒蛇的绘制 import turtle # 调用turtle(海龟绘图)加as t表示将库名改命名为t,后续用t.(函数名表式 ...
- Langchain-Chatchat项目:5.1-ChatGLM3-6B工具调用
在语义.数学.推理.代码.知识等不同角度的数据集上测评显示,ChatGLM3-6B-Base 具有在10B以下的基础模型中最强的性能.ChatGLM3-6B采用了全新设计的Prompt格式,除正常 ...
- 多维详述MediaBox互动直播AUI Kit低代码开发方案
本专栏将分享阿里云视频云MediaBox系列技术文章,深度剖析音视频开发利器的技术架构.技术性能.开发能效和最佳实践,一起开启音视频的开发之旅.本文为MediaBox最佳实践篇,重点从互动直播AUI ...
- 题解 SP15454
前言 数学符号约定 \(\operatorname{lowbit}(x)\):表示 \(x\) 的二进制最低位. \([a,b]\):表示区间 \(a\sim b\),其中包含 \(a,\,b\) 端 ...
- JS判断点是否在线段上
本文利用向量的点积和叉积来判断点是否在线段上. 基础知识补充 从零开始的高中数学--向量.向量的点积.带你一次搞懂点积(内积).叉积(外积).Unity游戏开发--向量运算(点乘和叉乘 说明 点积可以 ...
- Vue + Element UI 实现复制当前行数据功能(复制到新增页面组件值不能更新等问题解决)
1.需求 使用Vue + Element UI 实现在列表的操作栏新增一个复制按钮,复制当前行的数据可以打开新增弹窗后亦可以跳转到新增页面,本文实现为跳转到新增页面. 2.实现 1)列表页 index ...
- 微信小程序文件预览和下载-文件系统
文件预览和下载 在下载之前,我们得先调用接口获取文件下载的url 然后通过wx.downloadFile将下载文件资源到本地 wx.downloadFile({ url: res.data.url, ...
- docker构建打包java项目
docker构建打包java项目 简介 本项目用于 研究和实践 docker的工作流部署发布 查看github源码 技术栈 spring-web (RESTAPI 请求交互) redis (用于实验 ...
- 3. Shell 条件判断
重点: 条件测试. read. Shell 环境配置. case. for. find. xargs. gzip,bzip2,xz. tar. sed. 1)Shell 的配置文件 Bash Shel ...