当前位置: 首页 > news >正文

注册网站用于跳转虚拟货币网站违法简单网站建设教学视频

注册网站用于跳转虚拟货币网站违法,简单网站建设教学视频,重庆快速网站推广,wordpress禁止ip文章目录 应用场景与 SpringBoot 集成示例 应用场景 AKKA 是一个用于构建高并发、分布式和容错应用程序的开源框架。它基于Actor模型#xff0c;提供了强大的并发抽象和工具#xff0c;适用于各种业务场景。以下是一些使用AKKA框架的常见业务场景的示例#xff1a; 实时数据… 文章目录 应用场景与 SpringBoot 集成示例 应用场景 AKKA 是一个用于构建高并发、分布式和容错应用程序的开源框架。它基于Actor模型提供了强大的并发抽象和工具适用于各种业务场景。以下是一些使用AKKA框架的常见业务场景的示例 实时数据处理AKKA提供了轻量级的Actor模型可以用于处理实时数据流。您可以创建多个Actor来处理数据的不同部分并使用消息传递机制进行通信和协调。这在实时监控、实时分析和实时推送等场景中非常有用。 并发任务执行AKKA的Actor模型使得并发任务的执行变得简单。您可以将任务分解为多个独立的Actor并让它们并行地执行。每个Actor可以负责处理一部分任务并通过消息传递进行协调和结果汇总。这在批处理、并行计算和任务调度等场景中非常有用。 分布式系统AKKA提供了分布式Actor模型可以在多个节点上分布Actor的实例。这使得构建分布式系统变得更加容易。您可以使用AKKA的远程Actor和集群功能来实现分布式的任务分发、数据共享和容错机制。 微服务架构AKKA可以作为构建微服务架构的基础。每个微服务可以由一个或多个Actor组成并使用消息传递进行通信。AKKA的容错机制和监督策略可以帮助实现高可用性和容错性的微服务。 实时通信和聊天应用AKKA提供了高效的消息传递机制适用于实时通信和聊天应用。每个用户可以由一个Actor表示消息可以通过Actor之间的邮箱进行传递。这使得实现实时聊天、通知和协作功能变得更加简单。 与 SpringBoot 集成 添加依赖 dependencygroupIdcom.typesafe.akka/groupIdartifactIdakka-slf4j_2.12/artifactIdversion2.5.22/version /dependency集成要点 由于 ActorSystem 的创建不是依赖new方式而是通过 create 方法所以我们需要写一个 Bean 来生产 ActorSystem。另外 Actor它也是通过 actorOf() 方法创建的所以我们也需要写生产 Actor 引用的方法Akka 提供了 IndirectActorProducer 接口通过实现该接口我们就可以实现DI依赖注入。集成 SpringBoot 之后ActorSystem 范围内的依赖都会交给 SpringBoot 来管理并且每个ActorSystem都会持有一个 ApplicationContext。 Actor 生产者 实现IndirectActorProducer用于生产Actor既然是交给Spring管理所以必须 ApplicationContext对象 和 bean名称 import akka.actor.Actor; import akka.actor.IndirectActorProducer; import org.springframework.context.ApplicationContext;public class ActorProducer implements IndirectActorProducer {private ApplicationContext context;private String beanName;public ActorProducer(ApplicationContext context,String beanName){this.contextcontext;this.beanNamebeanName;}Overridepublic Actor produce() {return (Actor) context.getBean(beanName);}Overridepublic Class? extends Actor actorClass() {return (Class? extends Actor) context.getType(beanName);} }扩展组件 构造 Props可以用于创建 ActorRef 对象 import akka.actor.Extension; import akka.actor.Props; import org.springframework.context.ApplicationContext;public class SpringExt implements Extension {private ApplicationContext context;public void init(ApplicationContext context) {System.out.println(applicationContext初始化...);this.context context;}public Props create(String beanName) {return Props.create(ActorProducer.class, this.context, beanName);} }扩展组件的提供者 通过 SpringExtProvider 我们可以获取到 SpringExt通过 SpringExt 我们可以使用 Props 创建 ActorRef 对象 import akka.actor.AbstractExtensionId; import akka.actor.ExtendedActorSystem;public class SpringExtProvider extends AbstractExtensionIdSpringExt {private static SpringExtProvider provider new SpringExtProvider();public static SpringExtProvider getInstance() {return provider;}Overridepublic SpringExt createExtension(ExtendedActorSystem extendedActorSystem) {return new SpringExt();} }配置类 用于初始化 ActorSystem并扫描到纳入到容器的 Actor import akka.actor.ActorSystem; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;Configuration public class ScanConfig {private final ApplicationContext context;Autowiredpublic ScanConfig(ApplicationContext context) {this.context context;}Beanpublic ActorSystem createSystem() {ActorSystem system ActorSystem.create(system);SpringExtProvider.getInstance().get(system).init(context);return system;} }示例 创建一个 Controller import akka.actor.ActorRef; import akka.actor.ActorSystem; import akka.actor.Props; import com.sie.mbm.mom.common.core.util.R; import com.sie.mbm.mom.framework.security.annotation.Inner; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource;Tag(name test) RestController RequestMapping(/test) Validated Inner(value false) public class TestController {Resourceprivate ActorSystem actorSystem;PostMapping(/test)Operation(summary test)public R search( ) {ActorRef pcm actorSystem.actorOf(Props.create(BossActor.class));pcm.tell(I AM MASTER.TELLING BOSS, ActorRef.noSender());return R.ok();} }创建一个 Actor 接受信息 import akka.actor.UntypedAbstractActor;public class BossActor extends UntypedAbstractActor {Overridepublic void onReceive(Object message) {System.out.println(message);} }成功输出
http://www.zqtcl.cn/news/745723/

相关文章:

  • 素材网站推广方案安卓端开发
  • 网站制作可以询价么168推广
  • 河南城乡和住房建设厅网站网络营销的主要特点有哪些
  • 哪些网站可以做自媒体wordpress 左侧
  • joomla! 1.5 网站建设基础教程丹阳网站推广
  • 中国建设银行山东省分行网站怎么做网站制作
  • 网站前台设计方案自助建站一般适用于大型电子商务网站建设
  • 建设银行不良资产处置网站wordpress啥时候出现的
  • 出口贸易网站网站建设及解决方案
  • 网站服务器要求做网站需要的服务器
  • 网站后台 编辑器 调用网站优化搜索排名
  • 汽车网站建设规划书网站首页版式
  • 国外网站推广方法wnmp 搭建WordPress
  • 网站建设流程 文档企业网上办事大厅
  • .net怎么做网站域名备案注销流程
  • 检测网站建设网站搭建注意事项
  • 河北建设工程信息网站网站的建设要多少钱
  • 玉林住房和城乡建设局网站官网google广告在wordpress
  • 海淀网站建设公司wordpress 招聘网站模板
  • 手机网站在哪里找到网上能免费做网站发布叼
  • 网站设置英文怎么说广州优质网站建设案例
  • 外贸怎样做网站临汾花果街网站建设
  • 专业集团门户网站建设方案南昌医院网站建设
  • 用php做美食网站有哪些新建网站如何做关键词
  • 企业网站建设招标微信公众平台官网登录入口网页版
  • 网站宣传图网站程序预装
  • 网站设计论文选题seo排名优化推广报价
  • wordpress图床网站百度链接收录
  • 八年级信息网站怎么做电商网站的支付接入该怎么做呢
  • wordpress 的应用大兴安岭地网站seo