转化油滑流数据,并使用阿卡的Http
目的是从数据库流数据,在这个组块数据的执行一些计算(该计算返回一些情况下类的未来)发送分块响应,并发送该数据作为分块的响应给用户。目前,我能够流式传输数据并发送响应,而无需执行任何计算。但是,我无法执行此计算,然后传输结果。转化油滑流数据,并使用阿卡的Http
这是我实施的路线。
def streamingDB1 = path("streaming-db1") {
get {
val src = Source.fromPublisher(db.stream(getRds))
complete(src)
}
}
函数getRds返回映射到案例类(使用光滑)的表的行。现在考虑功能计算这需要每一行作为输入并返回另一个案例类的未来。喜欢的东西
def compute(x: Tweet) : Future[TweetNew] = ?
我如何能实现可变SRC此功能,并将其发送给计算用户的分块响应(如流)。
回答:
你可以使用变换的scala.concurrent.Future[T]):FlowOps.this.Repr[T]" rel="nofollow noreferrer">mapAsync
来源:
val src = Source.fromPublisher(db.stream(getRds))
.mapAsync(parallelism = 3)(compute)
complete(src)
调整并行的水平需要。
以上是 转化油滑流数据,并使用阿卡的Http 的全部内容, 来源链接: utcz.com/qa/264907.html