Redkale 2.5.0 发布,Java 分布式微服务框架
Redkale 2.5.0 发布。
Redkale, 一个Java分布式微服务框架,1.4M的jar可以代替传统几十M的第三方。包含TCP/UDP、HTTP、RPC、依赖注入、序列化与反序列化、数据库操作、WebSocket等功能。 一方面模块高度整合,极大的简化业务开发代码,一方面暴露大量底层,方便二次框架开发。
Java并不臃肿, 臃肿的是你自己的设计思维!
本次版本更新内容:
1、【新增】支持Graalvm的native-image原生打包
2、【新增】apidoc生成OpenAPI 3.0规范json文件
3、【新增】net包支持TLS,且支持最新版TLSv1.3
4、【新增】增加@bean类,DataSource增加对所有entity参数是否有标记@entity的判断
5、【新增】增加PrepareCompiler 需结合redkale-maven-plugin插件使用
6、【新增】RedkaleClassLoader增加putDynXXX系列方法,增加Mpsc相关并发容器类
7、【优化】【不兼容】移除JDK8的支持, 最低版本升级为JDK11
8、【优化】【不兼容】废弃RetResult.attach属性
9、【优化】【不兼容】移除ResourceFactory.root(),增加ResourceFactory.create()
10、【优化】工程改成maven构建方式
11、【优化】RestMapping.name默认值不再去掉Service的服务名
12、【优化】Server.createContext()去掉参数,并从Server.start移至Server.init方法中调用
13、【优化】增加XmlReader,移除java.xml的依赖
14、【优化】convert支持java.lang.Record类
15、【优化】移除AsyncConnection的newInputStream
16、【修复】修复没mq配置下HttpMessageLocalClient无法正常使用的bug
17、【修复】修复HttpSimpleRequest复制给HttpRequest.requestURI没有加上path前缀
18、【修复】修复RESNAME_APP_CONF没有依赖注入的bug
原生打包:
需要安装Graalvm,在工程pom.xml 加入:
<plugin> <groupId>org.redkale.maven.plugins</groupId> <artifactId>redkale-maven-plugin</artifactId> <version>1.0.0</version> <configuration> <nativeimageArgs> <arg>--allow-incomplete-classpath</arg> <arg>--no-fallback</arg> </nativeimageArgs> </configuration> <executions> <execution> <id>redkale-compile</id> <phase>process-classes</phase> <goals> <goal>compile</goal> </goals> </execution> </executions> </plugin>
编译完工程后执行:
native-image -H:+ReportExceptionStackTraces --report-unsupported-elements-at-runtime -jar redkale-benchmark.jar
即可得到可运行文件 redkale-benchmark
由于redkale的零依赖, 原生打包后的文件大小远小于其他可原生打包的框架, 使用依赖官方plugins进行redis、mysql/postgresql等常规功能,打包后的大小依然不大, 如果SpringBoot工程加入redis、mysql等第三方后使用尚未成熟的Spring Native进行打包, 包体会非常大。
详情工程可参考: https://github.com/TechEmpower/FrameworkBenchmarks/blob/master/frameworks/Java/redkale/redkale-native.dockerfile
OpenAPI文档:
编译完工程并启动后执行 bin/apidoc.sh 会在工程目录下生成符合OpenAPI 3.0.0规范的openapi-doc.json 离线文件。
将json文件放进swagger-ui即可展现文档。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Furion v2.19.2 发布,喜事连连 🎉 贡献者突破 170 人
喜事一 截至 2021年10月19日,Furion 贡献者已达 170 人,近三个月平均每周都收到来自开发者的 Pull Request,目前已经合并的 Pull Request 有 342 个,关闭的有 92 个,待处理 1 个。 https://gitee.com/dotnetchina/Furion 感谢以上为 Furion 做出贡献的开发者们,因为有你们,Furion 越来越好,.NET 越来越好,我们越来越好。 喜事二 Furion 在 Gitee 平台项目统计访问 IP 突破 20万,在 Nuget 平台总下载量突破 115 万次。 Nuget 下载统计:https://www.nuget.org/profiles/monk.soul 喜事三 dotNET China 组织迎来新的明星项目:sharding-core 查看 dotNET China 组织首页:https://gitee.com/dotnetchina 本期更新 新特性 [新增] 远程请求代理模式请求报文头支持IDictionary<string ,object>类型。0204c0a [新增]Mo...
- 下一篇
Forest v1.5.11 发布,声明式 HTTP 框架,已超过 1.5k star
Forest介绍 Forest 是一个开源的 Java HTTP 客户端框架,它能够将 HTTP 的所有请求信息(包括 URL、Header 以及 Body 等信息)绑定到您自定义的 Interface 方法上,能够通过调用本地接口方法的方式发送 HTTP 请求 现已超过 1500 star Forest 如何使用 Forest 不需要您编写具体的 HTTP 调用过程,只需要您定义一个接口,然后通过 Forest 注解将 HTTP 请求的信息添加到接口的方法上即可。请求发送方通过调用您定义的接口便能自动发送请求和接受请求的响应。 Forest 的工作原理 Forest 会将您定义好的接口通过动态代理的方式生成一个具体的实现类,然后组织、验证 HTTP 请求信息,绑定动态数据,转换数据形式,SSL 验证签名,调用后端 HTTP API(httpclient 等 API)执行实际请求,等待响应,失败重试,转换响应数据到 Java 类型等脏活累活都由这动态代理的实现类给包了。 请求发送方调用这个接口时,实际上就是在调用这个干脏活累活的实现类。 文档和示例 项目主页 中文文档 JavaDoc ...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Red5直播服务器,属于Java语言的直播服务器
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS6,CentOS7官方镜像安装Oracle11G
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS关闭SELinux安全模块
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16