KontraktorJava 编写的轻量级高效 Actor 模型实现

联合创作 · 2023-09-29 14:57

Kontraktor 是一个 Java 编写的轻量级高效 Actor 模型实现。可以直接暴露 Actor 提供 TCP 服务、WebService 或者 WebSockets,从 JavaScript 客户端调用 Actor 方法,用 JavaScript 实现 Actor 并通过 Java 调用。 也是适用于 Java 8,面向(微)服务的分布式 Actor 模型实现。

特性

  • 简单的并发性

  • 写一次,处处运行

  • 高性能

示例代码

免费模板和 typed Actors

Kontraktor 使用普通的旧方法来隐式定义 Actor 消息。所以不需要定义“消息”类。这样,继承,接口,重构,代码完成和 Pojo 的方式一样。

public class HelloActor extends Actor<HelloActor> {
    public IPromise greet( String name ) {
        return new Promise("Hello "+name);
    }
    public static void main(String a[]) {
        HelloActor myService = AsActor(HelloActor.class);
        System.out.println( myService.greet("Kontraktor").await() );
    }
}

可以用“单线程角色的共享/消息传递”替换 Java 的“多线程/共享数据并发”模型。 不过 Kontraktor 在 Java 多线程编程方面表现良好,根据需要搭配使用。

浏览 3
点赞
评论
收藏
分享

手机扫一扫分享

编辑
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑
举报