squbs-21. Akka HTTP实验支持

原文地址:Experimental Support for Akka HTTP
在这个点上,Akka HTTP支持依然是实验性的。它将最终替代Spray ,迟早作为squbs的高性能、稳定的、同样特性的HTTP引擎实现。

开启Akka HTTP实验

为开启实验性的Akka HTTP 支持,设置以下在application.conf中的配置squbs.experimental-mode-on = true

程序差异

对于 Akka HTTP,你需要声明你的route通过使用不同RouteDefinition trait而不是Spray route。改变你的导入 RouteDefinition声明如下:

从: import org.squbs.unicomplex.RouteDefinition

到: import org.squbs.unicomplex.streaming.RouteDefinition

下一步,声明你的route通过使用 Akka HTTP 指令集。如果你从Spray迁移过来,你通常只需要替换你的导入如下:

从: import spray.routing.Directives._

到: import akka.http.scaladsl.server.Directives._

不过这里有一些不同,更多细节请参考documentation for Akka HTTP directives 。

模块

当使用 Akka HTTP时,这些模块替换先前的模块。你需要确保这些模块加入到你的libraryDependencies ,在你的build.sbt 中,而不是默认版本。

  1. StreamingPipeline: Akka流Pipeline版本,基于在Akka Stream之上的 BidiFlow。在 Akka HTTP.,这个artifact squbs-streamingpipeline替换squbs-pipeline。它允许用户或基础设施团队实现诸如BidiFlow元素的请求/响应,并将他们注册到pipeline。参考Streaming Pipeline documentation 获得更多信息。
  2. Console for Akka HTTP:在 Akka HTTP 实验模块中, squbs-admin-exp 替换squbs-admin。它使用 Akka HTTP接口而不是Spray接口。在实验模块,用户需要修改他们的 build.sbt,并使用这个依赖而不是squbs-admin。

你可能感兴趣的:(squbs-21. Akka HTTP实验支持)