spray-can的初识
2015-09-12 15:11
363 查看
1.根据自已的理解
其实spray-can的主要部分有 IO-HTTP,listener与handle
IO-HTTP是我们的system actor后,listener actor前的一个actor,他负责管理TCP,HTTP等的"管理员"
the manager actor for the given IO extension
而listener是一个注册在IO Actor的,绑定在指定的port
我们可以通过
进行绑定,Bind的接受方其实是个 HttpListener实例,这个实例是private,只能用messages进行互动(以后可以用于stop,或者获取stats信息等),
例如向第一个HttpListener获取stats的信息
如果成功了lis,lis2就是request handle,可对用户请求response
绑定后
还有一个需要注意的是我们的request在"handle"居然也是一个actor,不过要注意的是这个actor是没有注册的,所以他无法远程通过actorSelect选中,这也是说我们的service actor是要保持在同一个jvm下的!
其实spray-can的主要部分有 IO-HTTP,listener与handle
IO-HTTP是我们的system actor后,listener actor前的一个actor,他负责管理TCP,HTTP等的"管理员"
the manager actor for the given IO extension
而listener是一个注册在IO Actor的,绑定在指定的port
我们可以通过
IO(Http) ! Http.Bind(lis, interface = "localhost",port=8080) IO(Http) ! Http.Bind(lis2,interface = "localhost",port=8081)
进行绑定,Bind的接受方其实是个 HttpListener实例,这个实例是private,只能用messages进行互动(以后可以用于stop,或者获取stats信息等),
例如向第一个HttpListener获取stats的信息
system.actorSelection("/user/IO-HTTP/listener-0") ! Http.Unbind
如果成功了lis,lis2就是request handle,可对用户请求response
绑定后
[INFO] [09/12/2015 14:53:28.084] [mySystem-akka.actor.default-dispatcher-4] [akka://mySystem/user/IO-HTTP/listener-0] Bound to localhost/127.0.0.1:8080 [INFO] [09/12/2015 14:53:28.084] [mySystem-akka.actor.default-dispatcher-7] [akka://mySystem/user/IO-HTTP/listener-1] Bound to localhost/127.0.0.1:8081
还有一个需要注意的是我们的request在"handle"居然也是一个actor,不过要注意的是这个actor是没有注册的,所以他无法远程通过actorSelect选中,这也是说我们的service actor是要保持在同一个jvm下的!
相关文章推荐
- RC522 NFC IC卡性能简介
- css居中方式总结
- 数组中元素差的最大值
- 回文树
- 最长的可整合子数组的长度
- 【C#】初识c#
- CSS学习笔记----CSS3自定义字体图标
- MySql学习之varchar类型
- RadioButton的两种显示方式
- mysql优化篇(三)
- 堆排序和选择排序的比较
- 前台通过get请求后台中文乱码!
- No compiler is provided in this environment. Perhaps you are running on a JRE
- python unittest源码解析四----关于源码中的__unittest的用处
- windows server 2008见安装IIS方法(解决)
- 类簇
- 创建实体数据模型(EF基础系列5)
- 【项目三之经典问题——汉诺塔】
- 最小二乘法的几何解释
- [Wed, 19 Aug 2015 ~ Tue, 25 Aug 2015] Deep Learning in arxiv