Akka Actor 路径
来源:互联网 发布:求数组的最小值 编辑:程序博客网 时间:2024/05/12 18:40
与远程部署之间的互操作
当一个actor创建一个子actor,actor系统的部署者会决定新的actor是在同一个jvm中还是在其它节点上。如果是后者,actor的创建会通过网络连接引到另一个jvm中进行,因而在另一个actor系统中。远程系统会将新的actor放在一个专为这种场景所保留的特殊路径下,新的actor的监管者将会是一个远程actor引用(代表触发它创建动作的actor)。这时,context.parent
(监管者引用)和context.path.parent
(actor路径上的父actor)表示的actor是不同的。然而,在其监管者中查找这个actor的名称将会在远程节点上找到它,保持其逻辑结构,例如向另一个未确定(unresolved)的actor引用发送消息。
路径中的地址部分用来做什么?
在网络上传送actor引用时,是用它的路径来表示的。因此,它的路径必须包括能够用来向它所代表的actor发送消息的完整信息。这一点是通过将协议、主机名和端口编码在路径字符串的地址部分做到的。当actor系统从远程节点接收到一个actor路径,会检查它的地址部分是否与自己的地址相同,如果相同,那么会将这条路径解析为本地actor引用,否则解析为一个远程actor引用。
Actor路径的顶级作用域
在路径树的根上是根监管者,所有其他actor都可以从通过它找到;它的名字是"/"
。在第二个层次上是以下这些:
"/user"
是所有由用户创建的顶级actor的监管者;用ActorSystem.actorOf
创建的actor在其下。"/system"
是所有由系统创建的顶级actor的监管者,如日志监听器,或由配置指定在actor系统启动时自动部署的actor。"/deadLetters"
是死信actor,所有发往已经终止或不存在的actor的消息会被重定向到这里(以尽最大努力为基础:即使在本地JVM,消息也可能丢失)"/temp"
是所有系统创建的短时actor的监管者,例如那些在ActorRef.ask
的实现中用到的actor。"/remote"
是一个人造虚拟路径,用来存放所有其监管者是远程actor引用的actor。
需要为actor构建这样的名称空间源于一个核心的非常简单的设计目标:在树形结构中的一切都是一个actor,以及所有的actor都以相同方式工作。因此,你不仅可以查找你所创建的actor,你也可以查找系统守护者并发送消息(在这种情况下它会忠实地丢弃之)。这个强大的原则意味着不需要记住额外的怪异模式,它使整个系统更加统一和一致。
- Akka Actor 路径
- Akka actor
- Akka 模仿 actor
- actor框架-Akka
- Akka 【二】Create Actor
- Akka 编程: 什么是Actor
- [akka] Actor的生命周期
- Akka Actor System
- Actor Model & Akka
- akka---actor模型
- akka访问远程Actor
- akka-actor(fb)
- akka-actor(嘿咻demo)
- 【Akka】Actor引用
- 【Akka】Actor模型探索
- akka-actor-01
- akka actor rpc demo
- akka actor监控(monitoring)
- 苹果发布会纪实
- Android 实现页面顶部下拉、底部上拉 沿着Y轴缩放效果
- 在装过11grac的机器上装10g需要注意
- 修改MYSQL数据库root密码(忘记root密码)
- 小米应用是如果进行monkey测试的
- Akka Actor 路径
- 面对众说纷纭的CMS,到底应该选择哪款呢
- nil、Nil、NULL、NSNull的区别
- 关于checkbox的全选和反选功能
- 页面传输中文到服务器乱码,页面显示乱码
- pat 乙 1002. 写出这个数
- 绘制像素到屏幕上
- java中的组合和继承
- Android Service : Binder原理