- 浏览: 189955 次
- 性别:
- 来自: 上海
文章分类
最新评论
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("你好"));
}
}
大功告成,非常的简单
主要用于帮助开发者创建基于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("你好"));
}
}
大功告成,非常的简单
发表评论
-
spring boot
2017-11-22 14:12 0spring boot service mesh spring ... -
redis 客户端 jedis
2016-11-09 15:36 508 -
高效序列化工具kryo
2016-11-09 15:29 553 -
Jetty项目简介
2016-11-07 11:28 446jetty是一个开源、基于标准、全功能实现的Java服务器。它 ... -
Quartz 表达式
2016-08-26 15:13 383Quartz中时间表达式的设 ... -
org.apache.commons.dbutils
2016-08-26 11:20 359 -
org.quartz
2016-08-26 10:16 531 -
jedis
2016-08-24 18:08 458 -
待查看
2016-08-02 09:41 4051tair 2 tddl 3hsf 4 分库分表 pmd ... -
spring 线程池
2016-07-10 10:26 513一、初始化 1,直接调用 [java] view plai ... -
Notify、MetaQ、Kafka、ActiveMQ
2016-07-03 12:15 7911 Notify Notify是淘宝自主研发的一套消息服务引 ... -
mybatis 帮助文档
2016-04-22 11:01 508http://www.mybatis.org/mybatis- ... -
redis学习(java调用方式)
2016-04-07 17:56 488【redis数据结构 – 简介 ... -
spring mybatis
2016-03-25 15:43 542org.mybatis.spring.SqlSessionTe ... -
SonarQube代码质量管理平台安装与使用
2016-03-21 16:13 512代码质量管理工具 http://blog.csdn.net/h ... -
mybatis深入
2016-03-21 13:59 485-------Mybatis数据源与连 ... -
关于 mybatis 传参
2016-03-18 10:46 552基本数据类型:包含int,String,Date等。基本数据类 ... -
spring 加载配置文件 xml 和properties
2016-03-17 17:12 2936Spring配置文件是集成了Spring框架的项目的核心,引擎 ... -
cat监控
2016-03-16 15:22 485 -
durid 数据库连接池
2016-03-15 09:35 1032Druid是Java语言中最好的数据库连接池。Druid能够提 ...
相关推荐
.NET Reactor是一款功能强大的代码保护以及许可授权管理系统软件,主要用于开发人员保护其.NET软件程序,.NET Reactor支持所有支持.NET编译的程序开发语言。 .NET Reactor 4.9是目前最新版本,由大神yoza破解,亲测...
赠送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文档...
赠送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文档...
dotNET Reactor 使用步骤图解 dotNET Reactor 是一个功能强大的.NET 保护工具,它可以帮助开发者保护他们的.NET 程序集免受反编译和逆向工程的攻击。下面是 dotNET Reactor 的使用步骤图解: 选择文件 dotNET ...
赠送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文档...
赠送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-...
在React框架中,Reactor是其核心库之一,专门用于构建响应式应用程序。本篇文章将详细解读Reactor 3的中文帮助文档,帮助用户理解非阻塞响应式框架的使用方法及其原理,尤其是Spring WebFlux底层实现的相关知识。 ...
赠送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....
赠送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_1279带破解文件NET+Reactor_1279带破解文件NET+Reactor_1279带破解文件NET+Reactor_1279带破解文件
.NET Reactor是一款强大的.NET应用程序保护和打包工具,主要用于防止反编译、代码盗用和逆向工程。这个压缩包文件"NET_Reactor_v5.9.8.0.zip"包含了该工具的版本5.9.8.0。下面将详细介绍.NET Reactor的主要功能和...
Reactor是Spring框架的一部分,它是一个响应式编程库,用于构建非阻塞、高并发、事件驱动的应用程序。在Java生态系统中,Reactor是实现 Reactive Streams 规范的一个关键工具,它提供了Mono和Flux两种核心类型来处理...
赠送jar包:reactor-core-3.1.6.RELEASE.jar; 赠送原API文档:reactor-core-3.1.6.RELEASE-javadoc.jar; 赠送源代码:reactor-core-3.1.6.RELEASE-sources.jar; 赠送Maven依赖信息文件:reactor-core-3.1.6....
.NET Reactor是一款功能强大的代码保护以及许可授权管理系统软件,主要用于开发人员保护其.NET软件程序,.NET Reactor支持所有支持.NET编译的程序开发语言。控件中国网是.NET Reactor在中国正式的授权销售商,提供...
IO(基于选择器)+ LMAX Disruptor 需要Java 1.8。 实施的想法: select()的专用线程-React堆模式,通过特殊的WaitStrategy实现为一个中断实例。 N个线程(即处理器)处理IO事件。 一个NIO通道的处理始终在一个...
java基于NIO实现Reactor模型源码java基于NIO实现Reactor模型源码java基于NIO实现Reactor模型源码java基于NIO实现Reactor模型源码java基于NIO实现Reactor模型源码java基于NIO实现Reactor模型源码java基于NIO实现...
.NET Reactor 6.5 是一款强大的.NET代码保护和打包工具,主要面向.NET开发者,用于保护他们的.NET应用程序免受逆向工程、调试和非法复制。它通过混淆代码、加密资源和阻止调试,确保你的知识产权安全无虞。在.NET...
赠送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-...