Я работаю с набранным Akka, и я не могу проверить в официальной документации (https://doc.akka.io/docs/akka/current/typed/actors.html#actors),, что я нашел очень кратко, как настроить Диспетчер в набранном Actor.
Вот пример моего кода
private int actorTimeout = Integer.parseInt(getProperty("environment.actor.timeout", "10"));
@Autowired
private AkkaTypedDAO akkaTypedDAO;
private ActorSystem<AkkaTypedDTO> system;
@PostConstruct
private void initActor() {
system = ActorSystem.create(akkaTypedDAO.daoWithSupervisor, "AkkaTypedDAO");
}
private final Behavior<CommandAkkaTyped> service = Actor.immutable((ctx, msg) -> {
sendToDAO(msg.id).thenApply(either -> {
msg.replyTo.tell(either);
return either;
});
return Actor.same();
});
public final Behavior<CommandAkkaTyped> serviceWithSupervisor = Actor.supervise(service).onFailure(Exception.class, restart());
private CompletionStage<Either<ConnectorErrorVO, EntityDaoDTO>> sendToDAO(MUSIn<AkkaTypedPayLoad> id) {
return AskPattern.ask(system,
(ActorRef<Either<ConnectorErrorVO, EntityDaoDTO>> replyTo) -> new AkkaTypedDTO(new EntityDaoDTO(musIn), replyTo),
new Timeout(actorTimeout, TimeUnit.SECONDS), system.scheduler());
}
Когда я создаю свою систему ActorSystem, как я могу настроить диспетчер для моего Actor.immutable?