`

Reactor、Disruptor

 
阅读更多
Reactor
主要用于帮助开发者创建基于JVM的异步应用程序。该框架提供了Java、Groovy等JVM语言的抽象,使得开发者构建事件/数据驱动的应用程序更加容易。

Reactor开发人员称,在适度的硬件配置环境中,通过非阻塞的Dispatcher,该框架每秒可以处理超过1500万事件。此外,Reactor还提供了一系列其他的调度程序供开发者选择,范围从线程池风格的长线任务执行,到非阻塞大批量的任务调度等。

Reactor除了受到同名的Reactor设计模式的影响外,还借鉴了其他事件驱动设计模式以及一些已开发多年的非常棒的JVM解决方案。Reactor的目标是,将这些想法和设计模式浓缩到一个简单、可重用的基础框架中,以使事件驱动编程更容易。

以下转自 http://www.hack6.com/html/bc/java/20140401/43395.html
最近工作中用到一个非常好用的框架spring reactor,可以帮助我们新开一个异步的线程来处理一些比如记录日志的功能,这样就能节约后台相应的时间,之前在网上也没有找到完全能用的列子,这里记录一下,方便以后用,配置也非常的简单:

1:引入jar包,这里使用的是maven,只需要引用一个jar包就行了

<dependency>
    <groupid>org.projectreactor</groupid>
    reactor-spring</artifactid>
    <version>1.0.0.RELEASE</version>
</dependency>


2:写一个reactor的配置的bean

@Configuration
@EnableReactor
public class ReactorConfig {

    @Bean(name = "rootReactor")
    public Reactor rootReactor(Environment env) {
        return Reactors.reactor().env(env).get();
    }

    @Bean(name = "reportReactor")
    public Reactor reportReactor(Environment env) {
        return Reactors.reactor().env(env).get();
    }

}


3:事件的处理类,一般是以Hander结尾,方便区分:

@Component
public class IndexHandler {

    @Autowired
    @Qualifier("rootReactor")
    private Reactor reactor;

    @Selector(value = "hello", reactor = "@rootReactor")
    public void handleTestTopic(Event<string> evt) throws Exception {
        System.out.println("************");
    }
}</string>


4:最后就是在controller或者service里面通知新开线程了:

@Controller
public class IndexController {

    @Autowired
    @Qualifier("rootReactor")
    private Reactor r;

    @RequestMapping("chen")
    @Transactional
    public void chen() {
        r.notify("hello", Event.wrap("你好"));
    }
}


大功告成,非常的简单

分享到:
评论

相关推荐

    reactor-core-3.4.10-API文档-中文版.zip

    赠送jar包:reactor-core-3.4.10.jar; 赠送原API文档:reactor-core-3.4.10-javadoc.jar; 赠送源代码:reactor-core-3.4.10-sources.jar; 赠送Maven依赖信息文件:reactor-core-3.4.10.pom; 包含翻译后的API文档...

    reactor-core-3.4.14-API文档-中文版.zip

    赠送jar包:reactor-core-3.4.14.jar; 赠送原API文档:reactor-core-3.4.14-javadoc.jar; 赠送源代码:reactor-core-3.4.14-sources.jar; 赠送Maven依赖信息文件:reactor-core-3.4.14.pom; 包含翻译后的API文档...

    reactor-netty-core-1.0.15-API文档-中文版.zip

    赠送jar包:reactor-netty-core-1.0.15.jar; 赠送原API文档:reactor-netty-core-1.0.15-javadoc.jar; 赠送源代码:reactor-netty-core-1.0.15-sources.jar; 赠送Maven依赖信息文件:reactor-netty-core-1.0.15....

    reactor-netty-http-1.0.11-API文档-中文版.zip

    赠送jar包:reactor-netty-http-1.0.11.jar; 赠送原API文档:reactor-netty-http-1.0.11-javadoc.jar; 赠送源代码:reactor-netty-http-1.0.11-sources.jar; 赠送Maven依赖信息文件:reactor-netty-...

    reactor-extra-3.4.6-API文档-中文版.zip

    赠送jar包:reactor-extra-3.4.6.jar; 赠送原API文档:reactor-extra-3.4.6-javadoc.jar; 赠送源代码:reactor-extra-3.4.6-sources.jar; 赠送Maven依赖信息文件:reactor-extra-3.4.6.pom; 包含翻译后的API文档...

    .NET Reactor 4.9 破解版

    .NET Reactor是一款功能强大的代码保护以及许可授权管理系统软件,主要用于开发人员保护其.NET软件程序,.NET Reactor支持所有支持.NET编译的程序开发语言。 .NET Reactor 4.9是目前最新版本,由大神yoza破解,亲测...

    reactor-extra-3.4.5-API文档-中文版.zip

    赠送jar包:reactor-extra-3.4.5.jar; 赠送原API文档:reactor-extra-3.4.5-javadoc.jar; 赠送源代码:reactor-extra-3.4.5-sources.jar; 赠送Maven依赖信息文件:reactor-extra-3.4.5.pom; 包含翻译后的API文档...

    NET+Reactor_1279带破解文件

    NET+Reactor_1279带破解文件NET+Reactor_1279带破解文件NET+Reactor_1279带破解文件NET+Reactor_1279带破解文件

    NET Reactor 5.0破解版

    .NET Reactor是一款功能强大的代码保护以及许可授权管理系统软件,主要用于开发人员保护其.NET软件程序,.NET Reactor支持所有支持.NET编译的程序开发语言。控件中国网是.NET Reactor在中国正式的授权销售商,提供...

    disrupted-reactor:Java异步。 IO(基于选择器)+ LMAX Disruptor

    IO(基于选择器)+ LMAX Disruptor 需要Java 1.8。 实施的想法: select()的专用线程-React堆模式,通过特殊的WaitStrategy实现为一个中断实例。 N个线程(即处理器)处理IO事件。 一个NIO通道的处理始终在一个...

    java基于NIO实现Reactor模型源码.zip

    java基于NIO实现Reactor模型源码java基于NIO实现Reactor模型源码java基于NIO实现Reactor模型源码java基于NIO实现Reactor模型源码java基于NIO实现Reactor模型源码java基于NIO实现Reactor模型源码java基于NIO实现...

    Reactor教程Mono和Flux例子

    Reactor教程Mono和Flux例子,同时可以查看我的博客,有介绍如何使用Reactor的详细教程

    .NET Reactor V4.5绿色破解版

    .NET Reactor V4.5代码保护(防反编译) 与模糊工具(Obfuscator)相比,.NET Reactor 可以完全阻止对 .NET 程序集(由 C#, VB.NET, Delphi.NET, J#, MSIL... 等语言编写)的反编译。通俗的讲,.NET Reactor 在破解者...

    Reactor 3中文帮助文档

    Reactor3中文帮助文档,帮助初学者了解非阻塞响应式式框架的使用以及原理,帮助了解spring webflux的一些底层实现原理

    reactor-netty-http-1.0.15-API文档-中英对照版.zip

    赠送jar包:reactor-netty-http-1.0.15.jar; 赠送原API文档:reactor-netty-http-1.0.15-javadoc.jar; 赠送源代码:reactor-netty-http-1.0.15-sources.jar; 赠送Maven依赖信息文件:reactor-netty-...

    异步应用基础库Reactor.zip

    Reactor 是一个基于 JVM 之上的异步应用基础库。为 Java 、Groovy 和其他 JVM 语言提供了构建基于事件和数据驱动应用的抽象库。Reactor 性能相当高,在最新的硬件平台上,使用无堵塞分发器每秒钟可处理 1500 万事件...

    .NET REACTOR中文使用文档

    .NET Reactor是一款项目知识产权保护软件。它能够使你的程序无法反编译,它可以为你程序生成一套许可证系统。

    Reactor 3 参考文档.pdf

    Reactor 3参考文档,reactor 3是一个围绕Reactive Streams规范构建的库,它在JVM上引入了响应式编程的一个范例。目前Spring5 引入的Webflux就是reactor 3实现的一个响应式web框架

    dotNET_Reactor_6.3_cracked.zip

    .net reactor 6.3免费版

    NET REACTOR中文手册

    NET REACTOR中文手册

Global site tag (gtag.js) - Google Analytics