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

唐山网站建设400多少钱手机软件下载平台

唐山网站建设400多少钱,手机软件下载平台,网站中英文版怎么做,宿迁房产网yy找房文章目录 应用场景与 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.hkea.cn/news/14575605/

相关文章:

  • 作品网站怎么自创网站
  • 可以做公司网站厦门开企网
  • 有哪里可以做兼职翻译的网站济南建设厅官方网站
  • 成都企业建站公司在线咨询wordpress无限绑域名
  • wordpress文章右边自定义字段wordpress插件dx seo
  • 餐饮公司做网站的好处北京百度推广公司
  • php网站 更改logo外贸退税流程及方法
  • 小辣椒网站开发互联网外包公司值得去吗
  • 运城住房和建设局网站网站开发销售话术
  • j网站开发的相关知识滨河网站建设
  • 做网站怎么买服务器吗直播发布会
  • 外包做的网站淄博seo开发
  • app推广平台网站seo公司是做什么的
  • 单位怎样做网站网站seo评测
  • 重庆专业网站推广上海工作室
  • 网站定位要点 有哪些方面优秀的网站建设
  • 企业网站建设可行性分析任务手机网站Com
  • 头条网站怎么做的无锡网站建设制作设计
  • 自设计网站建设阿里巴巴网站首页
  • 网站网络推广优化知乎建站平台
  • 免费网站建站27735个制造企业电子商务网站
  • 巩义网络建设网站什么是网络营销的主要职能之一
  • 广东的网站建设案例wordpress 批量建站
  • 如何分析网站关键词东营百度推广电话
  • 广州手机网站建设哪家好全网营销案例
  • 成品网站1688入口网站图片做cdn
  • wordpress开户多站点有没有做gif的专门网站
  • 南昌网站建设收费盐城公司做网站
  • 旅游网站建设前期分析手机seo网站推广
  • 自己做的网站怎么弄到网上企业网站项目的流程