RPC 远程过程调用 Autowire
- 授权协议: 未知
- 开发语言: Scala
- 操作系统: 跨平台
- 软件首页: https://github.com/lihaoyi/autowire
- 软件文档: https://github.com/lihaoyi/autowire
软件介绍
Autowire 包含一对宏,可以让你在两个 Scala 系统之间执行类型安全、无反射的 RPC 远程过程调用。示例代码:
// shared interface trait Api{ def add(x: Int, y: Int, z: Int): Int } // server-side router and implementation object Server extends autowire.Server... object ApiImpl extends Api def add(x: Int, y: Int, z: Int) = x + y + z } // client-side callsite object Client extends autowire.Client... Client[Api].add(1, 2, 3).call(): Future[Int] // | | | // | | The T is pickled and wrapped in a Future[T] // | The arguments to that method are pickled automatically // Call a method on the `Api` trait