Jboot v3.6.1 发布,持续发力 JFinal 分布式的生态建设

Jboot 是一个基于 JFinal、JFinal-Undertow、Dubbo、Seata、Sentinel、ShardingSphere、Nacos 等开发的微服务框架,帮助开发者降低微服务开发门槛。同时完美支持在 idea、eclipse 下多 maven 模块,对 java 代码、html、css、js 等资源文件进行热加载。爽爽开发,快乐生活。

到目前为止,Jboot 已经开源超过了 4 年的时间,迭代了 160+ 个版本,已经被超过 1000+ 公司在使用,其中包含了多个知名的上市公司。

Jboot V3.6.1 主要新增了关于分布式的场景类,JbootLock、JbootCounter。

一般情况下,在单体项目中,如果我们要对线程进行同步,我们可以对代码添加 锁,比如使用 Synchronized、ReentrantLock 等对代码进行线程同步,但是,如果在分布式的场景下,Synchronized、ReentrantLock 是无法夸应用进行线程同步的。分布式的线程同步,我们还需要编写大量的代码来实现。

在这样的场景进行,Jboot 新增了 JbootLock,用于保证本地和分布式拥有一致的特征。

例如:

JbootLock lock = JbootLockManager.me().create("myLock");
try {
    lock.lock();
    
    do_your_something();


}finally {
    lock.unlock();
}

这样的代码,在单体项目开发时,能够正常的使用,在分布式的场景下,我们只需要在 jboot.properties 里添加如下配置。

jboot.object.lock.type = redis

就可以正常的让 JbootLock 在分布式的场景下、夸应用进行 “线程同步”。

JbootCounter 是一个计数器,拥有了和 JbootLock 一样的特征,可以在本地和分布式场景下通过配置进行切换。

Jboot 主要有以下特征:

  • 1、基于 JFinal 的 MVC + ORM 快速开发
  • 2、基于 ShardingSphere + Seata 分布式事务 和 分库分表
  • 3、基于 Dubbo 或 Motan 的 RPC 实现
  • 4、基于 Sentinel 的分布式限流和降级
  • 5、基于 Apollo 和 Nacos 的分布式配置中心
  • 6、基于 EhCache 和 Redis 的分布式二级缓存

Jboot v3.6.0  更新内容如下:

  • 新增:JbootCaptchaCache 方便在分布式的场景下进行验证码验证
  • 新增:JbootTokenCache 方便在分布式下进行 token 验证
  • 新增:JbootLock,方便在本地模式下分布式模型下进行锁机制编写
  • 优化:RequestMapping 注解添加空字符串 "" 配置的支持。
  • 优化:移动 JbootAccessTokenCache 的包名,优化器对分布式场景下微信开发
  • 优化:重构 JbootCounter,使其在单体模型下和分布式场景下有一致的特征

开发文档:

https://jbootprojects.gitee.io/docs/

同时,Jboot 官方也推出了企业级开发框架 JbootAdmin,详情 https://jbootprojects.gitee.io/docs/jbootadmin/

maven 依赖:

<dependency>
    <groupId>io.jboot</groupId>
    <artifactId>jboot</artifactId>
    <version>3.6.1</version>
</dependency>

Hello World:

@RequestMapping("/")
public class HelloworldController extends JbootController {

    public void index(){
        renderText("hello world");
    }

    public static void main(String[] args){
        JbootApplication.run(args);
    }
}

猜你喜欢

转载自www.oschina.net/news/120776/jboot-3-6-1-released