小编Ale*_*x K的帖子

如何在Spray框架中获取传入的IP地址

我正在查看即将进入的标头,但似乎没有IP:

HttpRequest(GET,http://127.0.0.1:8080/track/check,List(Accept-Language: uk-UA, 
uk, ru, en-US, en, Encoding: gzip, deflate, sdch, User-Agent: Mozilla/5.0 
(Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29
Safari/537.36, Accept: text/html, application/xhtml+xml, application/xml;q=0.9, 
*/*;q=0.8, Connection: keep-alive, Host: 127.0.0.1:8080),EmptyEntity,HTTP/1.1)
Run Code Online (Sandbox Code Playgroud)

这是我从浏览器做的请求.基本上我在寻找:

path("check") {
       get {
         implicit request => {
           val a = 5
         }
       }
     } ~
Run Code Online (Sandbox Code Playgroud)

这里请求对象没有关于IP地址的任何信息.非常感谢任何帮助.谢谢.

scala http ip-address akka spray

16
推荐指数
2
解决办法
3864
查看次数

Akka和ReactiveMongo

我试图找到在集群工作者之间共享同一个连接池的最佳方法.我有以下结构:

主演员 - >工作人员(最多可达100人) - > MongoDB

在worker和MongoDB之间我想放置reactivemongo,但是我不确定如何在所有actor之间提供连接池共享.

根据reactivemongo文档:

MongoDriver实例管理一个actor系统; 连接管理连接池.通常,MongoDriver或创建MongoConnection永远不会多次实例化.您可以提供一个或多个服务器的列表; 驱动程序将猜测它是独立服务器还是副本集配置.即使有一个副本节点,驱动程序也会探测其他节点并自动添加它们.

我应该在Master actor中创建它然后捆绑每条消息吗?所以,这将是主演员:

val driver = new MongoDriver
val connection = driver.connection(List("localhost"))
Run Code Online (Sandbox Code Playgroud)

然后我将连接传递给消息中的actor.或者我应该查询每个Work Actor中的连接并在消息中仅传递驱动程序?

非常感谢任何帮助.谢谢.

scala mongodb actor akka reactivemongo

9
推荐指数
2
解决办法
3544
查看次数

标签 统计

akka ×2

scala ×2

actor ×1

http ×1

ip-address ×1

mongodb ×1

reactivemongo ×1

spray ×1