Akka工具(二)—Event Bus

Actor 模型及 Akka 简介(三):EventBus简介 要使用 Akka EventBus, 首先要实现一个 EventBus 接口。type EventEvent 就是需要发布到总线上的事件Classifier 分类器用于对订阅者进行绑定和筛选Subscriber 注册到总线上的订阅者。所幸的是,我们不需要要从头实现 EventBus 接口,Akka 提供了一个 LookupClassification 帮助我们实现 Pub-Sub 模式,我们要做的最主要就是实现 publish 方法。subscriber!event// 其他方法... 阅读详情

某一天

小明:你好,你是报刊工作人员吗?

报刊:是的,请问,你有什么需要吗?

小明:我想订阅报刊,关于娱乐、经济、社会类的,其它的我不想要,可以吗?

报刊:可以的,并且你可以随时取消订阅。

小明:好的,谢谢你。祝你工作愉快!

通常该过程我们都是在软件上实现的,但是这并不影响我们要说明的内容。实际项目中,业务是复杂多样的,一个业务可能需要依赖另外一个业务,同时也可能取消和该业务的关联,如果我们不做好处理,各业务耦合度将会大大提高,不利于我们扩展和维护。怎样才能解耦这些依赖关系呢?通过上述小故事,大家是不是想到了什么呢,某个设计模式?没错,我们要使用的就是“发布-订阅”模式,使用该模式,订阅者可以订阅自己需要的东西,并且可以随时取消订阅,在这个过程中,发布者不知道订阅者是谁。

事件总线

Akka系统中,是不是需要我们自己去实现“发布-订阅”模式呢?答案肯定是no,Akka系统提供了一种事件总线(Event Bus)工具,内部实现了发布-订阅,通过使用它,我们就可以实现业务之间的解耦。

事件总线,Akka定义为EventBus类型,拥有发布、订阅、取消订阅等功能。处理过程:发布者将Event发布到EventBus上,订阅者将会接受到需要的消息,通常来讲,订阅者是一个Actor,通过createReceive方法接受消息。处理过程中,Classifier被用来描述事件分类,不同的事件有不同的订阅者,当然一个订阅者可以订阅多个事件,EventBus将会通过Classifier来选择订阅者并向其发送消息。常见的Cla

基于Quarkus与POJO-actor模式构建高并发LLM流式聊天服务 在现代Web应用开发中,响应式编程和事件驱动架构是处理高并发、实时数据流的核心范式。其原理在于通过非阻塞I/O和异步消息传递来提升系统吞吐量与资源利用率,尤其适用于需要处理大量并发连接和长时运行任务的场景,如实时通信、数据流处理和物联网应用。从技术价值看,这种架构能显著提升应用性能,降低服务器资源消耗,并改善用户体验。在应用层面,它常被用于构建聊天系统、实时仪表盘和API网关等。本文以构建大型语言模型(LLM)聊天界面为例,深入探讨了如何利用Quarkus框架的响应式特性和POJO-actor设计模式,实现 阅读详情

相关推荐

【akka】Akka源码分析-Event Bus

其实akka系统通过eventStream发布了很多重要的系统消息,比如actor生命周期状态、remote模式下网络生命周期事件,如果能够合理的使用好这些系统消息,会给我们带来极大的方便,偷偷的告诉你,cluster就是订阅了一些网络状态事件实现了许多重要的功能。但如果你深入Cluster的实现就会发现,这个东西其实还挺有用的,而且它是ActorSystem系统中所有事件消息的一个横切面,通过它你可以订阅特定类型的消息,然后做出相应的动作。那读者可能会问了,这个订阅消息也很简单的啊,我自己实现不就好了。

九师兄 837

Vert.x 4 学习笔记-Vert.x的Multi-Reactor(多Reactor)模式介绍

Vert.x 4的Multi-Reactor模式通过多事件循环线程实现高性能并发处理,核心设计包括:1)基于CPU核心数×2的Event Loop线程池处理非阻塞I/O;2)Worker线程池执行阻塞任务;3)Round-Robin负载均衡策略。相比传统单Reactor模式,Vert.x能充分利用多核CPU,支持更高并发。最佳实践包括合理配置线程池、避免阻塞Event Loop、使用executeBlocking处理耗时操作等。该模式适用于高并发API网关、实时数据处理等场景,通过事件驱动+线程隔离实现低延

技术人集结地 227

akka-eventbus-javafx-example:使用 https 的 JavaFX 示例应用程序

akka-eventbus-javafx-example 使用JavaFX 示例应用程序

C#集成Bartender:动态图片标签打印的实战与优化

本文详细介绍了在C#程序中集成Bartender实现动态图片标签打印的实战方法与优化策略。通过具名数据源绑定、图片对象尺寸控制等核心技巧,解决了动态图片显示/隐藏的难题,并提供了从模板设计、代码架构到性能优化、错误处理的全流程指南,帮助开发者构建稳定高效的工业级标签打印系统。

weixin_29216957的博客 431

Agentic RAG:RAG从静态到具有理解、推理、决策的Agentic RAG

RAG技术演进:从静态检索到智能代理 RAG(检索增强生成)技术经历了五个关键发展阶段:基础RAG(关键词检索)、高级RAG(语义理解)、模块化RAG(灵活架构)、图RAG(知识图谱)和最新的Agentic RAG(智能代理)。Agentic RAG通过引入自主AI代理,具备反思、规划、工具使用和多代理协作能力,实现了动态决策和自适应工作流。相比传统RAG的静态检索流程,Agentic RAG能处理复杂多步推理任务,通过自我改进机制提高输出质量,并支持多专业代理协作,显著提升了RAG系统在复杂场景下的表现。

2532

爬虫风控实战:当你的代理IP被数美滑块盯上时,如何优雅破解?

本文深入探讨了爬虫风控对抗中数美滑块验证码的破解与防御策略。通过分析数美滑块的多层防御机制,提出了代理IP池精细化管理、请求特征拟人化改造以及工程化滑块验证解决方案等系统性方法,帮助开发者有效降低验证码触发率,提升爬虫效率。

weixin_27419879的博客 206

VOS3000线路对接、路由配置与路由分析操作教程

通过本教程,你应该已经掌握了VOS3000的线路对接、路由配置和路由分析的基本操作。添加备用路由:为常用前缀添加备用路由,确保在主路由失效时呼叫仍能正常进行。进入线路管理:点击“系统管理” -> “线路管理” -> “添加线路”。查看日志:在“系统日志”中查看路由选择情况,确保路由配置正确。失败原因:查看失败呼叫的原因(如“无应答”、“线路忙”等)。线路选择:选择之前添加的线路(如“供应商A”)。保存并启用:填写完毕后,点击“保存”并启用路由。路由名称:自定义一个名称(如“路由A”)。

AI_wx_3307623172的博客 2967

Vivado ILA调试全攻略:从HDL实例化到Block Design的5个实战技巧

本文全面解析了Vivado集成逻辑分析仪(ILA)的五种核心调试方法,涵盖从HDL代码实例化到Block Design集成的实战技巧。详细对比了不同方法的优缺点与适用场景,并重点介绍了如何利用Debug Hub高效管理多时钟域复杂调试,旨在帮助FPGA开发者精准定位问题,显著提升板级调试效率。

weixin_29214199的博客 376

芒果YOLO11改进21:检测头Head篇:即插即用|新颖轻量化非对称多级压缩LADH检测头,原创改进适配YOLOv8高效检测头,检测头新颖性改进,全网首发独一份

检测头Head篇:即插即用|新颖轻量化非对称多级压缩LADH检测头,原创改进适配YOLOv8高效检测头,检测头新颖性改进,全网首发独一份

包括YOLOv5、YOLOv7、YOLOv8等模型改进 790

VHDL六层电梯控制器及仿真

六层电梯电梯 设计要求:设计一个六层电梯控制系统要求有超载、关门中断、提前关门清除报警信电梯外人的上升请求信号,电梯外人的下降请求信号, 电梯外人上升请求信号显示电梯外人下降请求信号显示到达楼层信号 设计思路:输入有clk时钟信号(频率为2Hz) full,deng,quick,clr超载、关门中断、提前关门清除报警c_u1,c_u2,c_u3,c_u4,c_u5电梯外人的上升请求c_d2,c_d3,c_d4,c_d5,c_d6 电梯外人的下降请求 d1,d2,d3,d4,d5,d6电梯内人的...

QQ_778132974的博客 1706

【Charge】仿真目录

Author: JiJi\textrm{Author: JiJi}Author: JiJi Created Time: 2026.01.20\textrm{Created Time: 2026.01.20}Created Time: 2026.01.20 Modified Time: 2026.01.20\textrm{Modified Time: 2026.01.20}Modified Time: 2026.01.20工作流程材料模型[Charge] 电荷分布与折射率变化理论 [Charge] FDTD

u011699626的博客 312

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

上一篇: Akka工具(二)—Future
下一篇: Akka-SpringBoot集成
西红柿丶番茄
博客等级 码龄10年 21粉丝 41原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值