使用Akka构建分布式Java应用程序
以下是一个简单的Akka actor系统的示例,展示了如何创建一个actor并发送消息。
import akka.actor.ActorRef;
import akka.actor.ActorSystem;
import akka.actor.Props;
public class AkkaDistributedApp {
// 定义一个简单的Akka actor
static public class GreetingActor extends UntypedActor {
public void onReceive(Object message) {
if (message instanceof String) {
System.out.println("Hello, " + message);
}
}
}
public static void main(String[] args) {
// 创建Actor系统
ActorSystem system = ActorSystem.create("HelloWorldSystem");
// 创建actor的Props,即配置信息,用于创建actor
Props props = Props.create(GreetingActor.class);
// 创建actor,并且得到一个ActorRef引用
ActorRef greetingActor = system.actorOf(props, "greeter");
// 发送消息给actor
greetingActor.tell("World", ActorRef.noSender());
// 停止Actor系统
system.terminate();
}
}
这个例子中,我们定义了一个GreetingActor
类,它用于接收字符串消息并打印出一个简单的问候。在main
方法中,我们创建了一个ActorSystem
,然后使用Props
来配置我们的Actor,并创建了一个实例。之后,我们向这个Actor发送了一个字符串消息。最后,我们关闭了整个Actor系统。这个例子展示了如何使用Akka创建和使用actor进行消息传递。
评论已关闭