这是一份akka的文档翻译(基于2.1.0版本),也是一份学习记录.
我们认为写一个好的多并发,容错性强,可伸缩的程序是困难的.因为大多数时间里我们使用了错误工具和错误的层次抽象.Akka改变了这种状况.我们使用Actor模型提供层次抽象和平台来创建多并发,可伸缩的程序.使用"Let it crash"模型来解决容错性.
在电信行业里已经得到很好的应用.Actor对分布式也提供支持.
Actor带给我们:
- 简单和高层级的并发与平行的抽象
- 异步,无阻塞和高性能的事件驱动编程模型
- 轻量级的事件驱动处理器(1GB内存可以包含270万个actor)
容错性:
- 监督者层次结构(注:灵感来源于Erlang)
- 监督者层次结构可以跨多个JVM(注:监督者actor可以监控在其他JVM中的actor)
- 编写高容错的自管理和永不停止的系统(注:例如Actor A监控Actor B,当B发生错误或完成任务退出时,B会发送信息(我怎么了)给A,A根据信息来决定是恢复,重启,停止B等操作)
位置透明:
Akka被设计用来在分布式环境中工作:在这个环境中所有的Actor使用消息来通讯并且是异步的.
处理者:
TODO
使用Akka的两种方式
- 当成一个库(lib)来使用:例如在web应用中,把Akka的jar包放在WEB-INF/lib中作为一个库来使用
- 当成一个微核心:把你的应用放入核心中(注:可以想象成Akka作为一个容器)
云Akka发生了什么?
之前有一个商业项目叫Cloudy Akka,为Akka提供集群,监控和管理支持.现在集群功能开源了,归入Akka2.1版本中.
监控和管理功能被Typesafe公司提出来变成Typesafe Console项目,这个是收费的,需向Typesafe公司购买.
后面是Typesafe公司自己做的广告包括:他们公司的技术栈介绍,Typesafe Console介绍.这里就不翻译了,想了解的去Typesafe公司网站看吧,首页就是....