akka各模块】的更多相关文章

Akka的模块化做得非常好,它为不同的功能提供了不同的Jar包. akka-actor-2.0.jar – 标准Actor, 有类型Actor,等等 akka-remote-2.0.jar – 远程Actor akka-slf4j-2.0.jar – SLF4J事件处理监听器 akka-testkit-2.0.jar – 用于测试Actor的工具包 akka-kernel-2.0.jar – Akka微内核,可运行一个基本的最小应用服务器 akka-<storage-system>-mailb…
模块 Akka的模块化做得非常好,它为不同的功能提供了不同的Jar包. akka-actor-2.0.jar – 标准Actor, 有类型Actor,等等 akka-remote-2.0.jar – 远程Actor akka-slf4j-2.0.jar – SLF4J事件处理监听器 akka-testkit-2.0.jar – 用于测试Actor的工具包 akka-kernel-2.0.jar – Akka微内核,可运行一个基本的最小应用服务器 akka--mailbox-2.0.jar – A…
Akka Akka是什么呢?直接引用Akka站点上面的描写叙述吧: Akka is a toolkit and runtime for building highly concurrent, distributed, and fault tolerant event-driven applications on the JVM. 反正我认为Akka是比較难上手的,并且文档对于新手来说,也不太友好.本文会用Akka写一个Hello World程序,从这个程序入手,介绍Akka的一些基本概念. he…
️ 引言 近两年,一直在折腾用FP与OO共存的编程语言Scala,采取以函数式编程为主的方式,结合TDD和BDD的手段,采用Domain Driven Design的方法学,去构造DDDD应用(Domain Driven Design & Distributed).期间,尝试了大量的框架:业务领域主要适用Akka.Scalaz等框架,UI和基础设施方面主要适用Spring.Kafka等框架,测试则主要适用Spock.ScalaTest.Selenium等框架. 两年的折腾,不能说没有一点收获.在…
Akka.NET 1.1近日发布,带来新特性和性能提升.InfoQ采访了Akka.net维护者Aaron Stannard,了解更多有关Akka.Streams和Akka.Cluster的信息.Aaron还阐述了与Akka for JVM实现有关的路线图计划. InfoQ:这个版本有什么突出的特性? Aaron Stannard:Akka.NET 1.1的主要目标是将Akka.Cluster由Beta测试版程序包变成最终版(RTM)程序包.该版本还提供了测试工具,对在生产环境里运行Akka.NE…
任何以前做过多线程的人都不会否认管理多线程程序是困难并且痛苦的. 我说管理是因为它开始很容易而且当你看到性能提升时会很兴奋.但是,当你看到你没法从子线程的错误中恢复 或者 这些僵尸bug很难重现 或者 当用性能剖析器时你发现你的线程在更新一个共享状态时阻塞了很长时间时,那真的很痛苦. 我倾向于不说Java的并发API和集合把并发编程变的更轻松和容易了,因为如果你看到这,你肯定渴望对子线程任务有更多控制或者希望更简单但又不愿意去写一堆的锁和同步代码块,而且希望对这种模式有更高层的抽象. 着这个Ak…
akka-stream的Graph是一种运算方案,它可能代表某种简单的线性数据流图如:Source/Flow/Sink,也可能是由更基础的流图组合而成相对复杂点的某种复合流图,而这个复合流图本身又可以被当作组件来组合更大的Graph.因为Graph只是对数据流运算的描述,所以它是可以被重复利用的.所以我们应该尽量地按照业务流程需要来设计构建Graph.在更高的功能层面上实现Graph的模块化(modular).按上回讨论,Graph又可以被描述成一种黑盒子,它的入口和出口就是Shape,而内部的…
Akka-http是一项系统集成工具.这主要依赖系统之间的数据交换功能.因为程序内数据表达形式与网上传输的数据格式是不相同的,所以需要对程序高级结构化的数据进行转换(marshalling or serializing)成为可在网上传输的数据格式.由于可能涉及到异类系统集成,网上传输数据格式是一个公开的标准,这样大家才都可以进行解析.Json就是是一个目前业界普遍接受的网上交换数据格式.当然,所谓的数据格式转换应该是双向的,还需要包括把接收的网上传输数据转换成程序高级结构化数据. Akka-ht…
本文是Scheduler模块源码分析的第二篇,第一篇Spark Scheduler模块源码分析之DAGScheduler主要分析了DAGScheduler.本文接下来结合Spark-1.6.0的源码继续分析TaskScheduler和SchedulerBackend. 一.TaskScheduler和SchedulerBackend类结构和继承关系 之所以把这部分放在最前面,是想让大家在阅读后续文章时对TaskScheduler和SchedulerBackend是什么有一个概念.因为有些方法是从…
解决方案: 一直以来,基于Akka实现的RPC通信框架是Spark引以为豪的主要特性,也是与Hadoop等分布式计算框架对比过程中一大亮点. 但是时代和技术都在演化,从Spark1.3.1版本开始,为了解决大块数据(如Shuffle)的传输问题,Spark引入了Netty通信框架,到了1.6.0版本,Netty居然完成取代了Akka,承担Spark内部所有的RPC通信以及数据流传输. 网络IO扫盲贴 在Linux操作系统层面,网络操作即为IO操作,总共有:阻塞式,非阻塞式,复用模型,信号驱动和异…