`
sillycat
  • 浏览: 2561714 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Play framework with Akka Throttle for Output

 
阅读更多
Play framework with Akka Throttle for Output

1 AKKA Version
First of all, check with AKKA version I am using in play framework 2.4.3. I knew the version of AKKA really matters.

In my play framework project
> activator

activator> show compile:dependencyClasspath

It will list all the dependency jars.
akka-actor_2.10-2.3.13.jar

akka-slf4j_2.10-2.3.13.jar

So the version is AKKA 2.3.13.

2 Throttling Actor Messages
Add this in the dependency
  "com.typesafe.akka" %% "akka-contrib" % "2.3.13",

Initiate the Akka as follow
  val contextIOActor = Akka.system.actorOf(ContextIOActor.props, name = "contextio-actor")
  val contextIOThrottler = Akka.system.actorOf(Props(classOf[TimerBasedThrottler], contextio_throttle msgsPer 60.second), name = "conetxt-io-throttler")
  contextIOThrottler ! SetTarget(Some(contextIOActor))

Then all we need to do is to send message to the contextIOThrottler, it will just throttle that and redirect the message to target.

References:
http://stackoverflow.com/questions/31112397/print-akka-version-in-play-framework-2-4-1

http://doc.akka.io/docs/akka/2.3.13/contrib/throttle.html

http://letitcrash.com/post/28901663062/throttling-messages-in-akka-2

http://www.michaelpollmeier.com/akka-work-pulling-pattern/

http://www.michaelpollmeier.com/akka-work-pulling-pattern-to-throttle-work/

http://doc.akka.io/api/akka/2.3.13/index.html#akka.contrib.throttle.TimerBasedThrottler

https://github.com/jonasanso/throttling/blob/5102d35f9abdf0cb15732a1cef0e4c92c4cca59c/app/controllers/Application.scala
分享到:
评论

相关推荐

    play framework api,play! framework api,play api

    2. **异步编程**:Play Framework基于Akka框架,支持非阻塞I/O和异步处理,提高了Web应用的并发性能。 3. **路由系统**:Play Framework的路由文件定义了URL到Action的映射,允许开发者灵活地控制请求处理逻辑。 4...

    playframework中文教程.zip

    Play Framework 是一个开源的Web应用框架,主要针对Java和Scala开发者设计,它的核心理念是简化开发流程,提高开发效率,并且特别强调了RESTful架构风格。这个“playframework中文教程.zip”压缩包很可能是为了帮助...

    play-zipkin-tracing:使用Zipkin为Play Framework和Akka提供分布式跟踪

    `play-zipkin-tracing` 是一个项目,它专门用于为Play Framework和Akka这样的工具集添加Zipkin支持,实现分布式跟踪。Zipkin是一个流行的开源系统,用于收集服务间调用的时序数据,帮助开发者在复杂的分布式环境中...

    Play Framework Cookbook

    - **非阻塞 I/O**:Play Framework 基于 Akka 框架实现了非阻塞 I/O,这使得在处理大量并发请求时无需担心性能瓶颈问题。本书会详细介绍如何利用这一特性构建高并发的应用程序。 - **模块化架构**:该框架支持模块化...

    Play Framework应用程序框架 v2.7.9.zip

    1. **异步编程模型**:Play Framework利用Akka Actor系统实现非阻塞I/O,提高了应用的并发性能。 2. **热重载**:在开发过程中,代码的修改可以实时生效,无需重启服务器,极大地提高了开发效率。 3. **可插拔的依赖...

    playframework 框架学习之路 1

    Play Framework 是一个基于Java和Scala的开源Web应用框架,它遵循模型-视图-控制器(MVC)架构模式。在“Playframework框架学习之路 1”中,我们可能要探讨这个框架的基础概念、安装过程以及如何创建一个简单的应用...

    Play Framework2本教程

    Play Framework2是一个强大的Java和Scala应用开发框架,它以其简洁的API、快速的开发周期以及对Web标准的紧密集成而闻名。本教程旨在为初学者和有经验的开发者提供全面的指导,帮助他们掌握Play Framework2的核心...

    AkkaGuice:Playframework 的 Akka Guice 集成

    Akka Guice 集成安装将以下内容添加到您的 build.sbt: resolvers += " release repository " at " ... 添加行(插件前面的数字是您播放应用程序内的加载顺序): 10000:akkaGuice.AkkaGuicePlugin在 Global.java 中...

    play framework 学生信息管理系统

    7. **异步编程**:Play Framework 基于Akka Actor模型,支持非阻塞I/O和异步处理,这使得它可以高效地处理高并发请求。 8. **测试**:Play Framework 提供了集成测试工具,如`play-test`模块,便于编写单元测试和...

    SignalJ:将 SignalR 创意移植到 PlayFramework 和 Akka

    使用 Actor 将 SignalR到 PlayFramework。 SignalJ(SignalR)是一个服务器到客户端和客户端到服务器的通信框架。 使用回退机制与浏览器通信。 首先尝试 websockets,然后服务器发送事件,最后长轮询。 还有其他几...

    Play Framework应用程序框架 v3.0.1.zip

    1. **异步编程模型**:Play Framework使用Akka Actor系统,支持非阻塞I/O和事件驱动编程,这使得它能处理大量并发请求,提高了应用程序的性能。 2. **热重载**:在开发过程中,Play框架支持代码的实时更新,无需...

    java版商城源码-hello2akka:介绍Playframework使用Akka演员和期货的演示文稿和代码示例

    /home/ambantis/Documents/dev/play/play4jug/hello2akka/project [info] Set current project to hello2akka (in build file:/home/ambantis/Documents/dev/play/play4jug/hello2akka/) > compile 基于线程的并发 ...

    Reactive Programming with Scala and Akka mobi

    Reactive Programming with Scala and Akka 英文mobi 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

    Play-Utils是一个专门为PlayFramework开发的实用工具包模块

    Play-Utils 模块是为 Play Framework 设计的一个强大且实用的工具集合,它极大地提升了开发者在使用 Play Framework 进行 Java Web 开发时的效率和便利性。Play Framework 是一个开源的、基于 MVC(模型-视图-控制器...

    playframework做的demo

    10. **异步编程**:Play Framework基于Akka Actor系统,支持非阻塞I/O,这对于处理高并发的Web应用非常有利。在博客系统中,这可能体现在如评论实时刷新、异步保存等场景。 通过这个Play Framework的博客示例,初学...

    Play Framework Cookbook.pdf

    - **非阻塞架构**:基于 Akka 的 Actor 模型,Play Framework 采用了异步和非阻塞 I/O 来处理 HTTP 请求,这使得应用能够高效地处理大量并发连接。 - **简洁性**:框架设计简洁明了,遵循“约定优于配置”的原则,...

    Play Framework应用程序框架 v2.7.9-源码.zip

    4. **Akka集成**:Play Framework基于Akka Actor系统构建,提供高度可扩展性和并发性。研究`play.core.AkkaHttpServer`和`play.api.libs.streams.AkkaStreams`,可以了解Play如何利用Akka处理HTTP请求。 5. **模块...

    就医管理系统java源码-bettercare4.me:这个响应式Web应用程序基于PlayFramework、Akka和ApacheSpar

    Framework、Akka 和 Apache Spark,使用 Scala 语言。 产品积压 Bettercare4.me 产品待办列表 提供基于差距查找患者的搜索功能 在患者记分卡页面上添加差距摘要部分 添加可视化仪表板 患者年龄分布 带有饼图的 HEDIS...

    Reactive.Programming.with.Scala.and.Akka.1783984341.epub

    Akka for Reactive Programming Chapter 5. Building Resilient Application with Akka Chapter 6. Akka Cluster Chapter 7. Finite State Machines with Akka Chapter 8. Akka Unit Testing Chapter 9. ...

Global site tag (gtag.js) - Google Analytics