如图右上角所示,Ray中有两类Handler(SubHandler和PartSubHandler),在使用中,SubHandler派生Actor的CoreHandler,PartSubHandler派生SQLToReadHandler,SQLToReadHandler派生Actor的ToReadHandler,使用Ray主要写Actor的CoreHandler和ToReadHandler。

SQLToReadHandler

ToReadHandler是复合消息持久化器,包含的功能有:消息路由器、消息处理器、消息分离器、消息聚合器、消息过滤器、消息持久化器。

前几种功能(消息路由器、消息处理器、消息分离器、消息聚合器、消息过滤器)与CoreHandler类似,不再赘述。

消息持久化器

ToReadHandler主要用于将消息中感兴趣的数据写入到数据库中,作为消息持久化器是它的主要功能。如上图所示,标记为“IO-SQL-DB”的地方都可以进行关系型数据库的读写操作,灰白色的的地方是推荐的操作(当前代码块需要读取数据库中数据,允许对数据库进行读操作;如果想进行数据库写操作,推荐在ToReadHandler订阅目标事件对数据库进行写操作)。


  • CoreHandler主要用于消息路由。
  • ToReadHandler主要用于消息持久化。

转载于:https://www.cnblogs.com/CharlesZHENG/p/8425850.html

5.Ray-Handler之ToReadHandler编写相关推荐

  1. Actor-ES框架:Ray-Handler之ToReadHandler编写

    如图右上角所示,Ray中有两类Handler(SubHandler和PartSubHandler),在使用中,SubHandler派生Actor的CoreHandler,PartSubHandler派 ...

  2. Actor-ES框架:Ray-Handler之CoreHandler编写

    如图右上角所示,Ray中有两类Handler(SubHandler和PartSubHandler),在使用中,SubHandler派生Actor的CoreHandler,PartSubHandler派 ...

  3. Actor-ES框架:Ray-Handler-消息订阅器编写

    消息订阅器: Ray是基于Event Sourcing设计的ES/Actor框架,消息发布后需要订阅处理,订阅器主要有以下两类: CoreHandler消息订阅器=RabbitSub+SubHandl ...

  4. Android基础夯实--你了解Handler有多少?

    概述 对于刚入门的同学来说,往往都会对Handler比较迷茫,到底Handler是个什么样的东西.当然,可能对于一些有工作经验的工程师来说,他们也不一定能很准确地描述,我们来看下API的介绍. Han ...

  5. python分布式框架_高性能分布式执行框架——Ray

    Ray是UC Berkeley RISELab新推出的高性能分布式执行框架,它使用了和传统分布式计算系统不一样的架构和对分布式计算的抽象方式,具有比Spark更优异的计算性能. Ray目前还处于实验室 ...

  6. Nginx handler模块

    Nginx handler模块 handler模块简介 相信大家在看了前一章的模块概述以后,都对nginx的模块有了一个基本的认识.基本上作为第三方开发者最可能开发的就是三种类型的模块,即handle ...

  7. python分布式多进程框架 Ray

    全栈工程师开发手册 (作者:栾鹏) python教程全解 并行和分布式计算是现代应用程序的主要内容.我们需要利用多个核心或多台机器来加速应用程序或大规模运行它们.网络爬虫和搜索所使用的基础设施并不是在 ...

  8. python高性能_Python高性能分布式执行框架-Ray

    Ray是UC Berkeley RISELab新推出的高性能分布式执行框架,它使用了和传统分布式计算系统不一样的架构和对分布式计算的抽象方式,具有比Spark更优异的计算性能.Ray是一个基于Pyth ...

  9. 使用DDD、事件风暴和Actor来设计反应式系统

    领域驱动设计(domain-driven design,DDD)通常在微服务领域用于查找边界(限界上下文).同样来自DDD的聚合(aggregate)对于定义持久化和一致性的范围来讲也是很重要的. 但 ...

最新文章

  1. Ubuntu9.10使用windows的字体的方法!
  2. matlab错误:vl_feat工具箱问题
  3. 【转】一步一步教你远程调用EJB
  4. centos7查看当前cpu运行模式_杂集:centos7中设置服务开机自启的两种方法,欢迎补充...
  5. OpenCv的连通域操作
  6. .xyz域名总量12强:西数连续夺冠 联动天下跌至榜尾
  7. 关于Java静态属性初始化
  8. e.preventdefault() 别滥用
  9. 程序员为3万福利放弃30万年薪:贪小便宜的人,都把自己坑惨了
  10. centos查看正在运行的服务_RHEL8或CentOS8上如何配置NTP服务器和客户端
  11. itext7中文开发文档(二)
  12. Growth—电子书预览版
  13. U盘启动 WinPE系统维护工具 任意安装GHO/WIM/ESD系统映像 无广告专业版
  14. 卡西欧电子词典EV-SP3900(英汉日版)
  15. Linux常用命令(压缩解压命令)
  16. linux系统怎么关闭屏保,Linux关闭屏保
  17. DCOS :私有云的物理基础架构管理引擎
  18. 华硕笔记本X450JB拆机及加装固态硬盘
  19. 基金经理研究所 | 从兴全合润看谢治宇的攻守道
  20. axios的get请求禁止缓存

热门文章

  1. 【Java从0到架构师】Spring - 纯注解开发
  2. 【网络安全工程师面试合集】—DNS 域名系统 到底是怎么回事?
  3. NetCat瑞士军刀渗透工具使用详解
  4. 克罗谈投资策略01_期货交易中的墨菲法则
  5. mysql存储过程in_在MySQL存储过程中使用WHERE IN()
  6. 一个代码都不用敲的可视化大屏,一口气把工具和模板都送给你
  7. 中国3亿中年男人都在花钱买什么?数据分析后告诉你答案,很现实
  8. 阿里架构师用3点讲透数据中台,这些都是你没看过的
  9. 读书笔记--云边有个小卖部
  10. vue注重细节的优化(绑定key)