나는 지금 매일 7-8 개월 동안 akka와 일하고있다. 시작했을 때 응용 프로그램을 작업하고 액터가 기본적으로 액터 시스템 내부에서 기본적으로 한 번만 사용되어 대부분의 객체 사이에서 통신한다는 것을 알았습니다. 그래서 나는 똑같이했습니다-x / y / z에 대한 다른 액터를 회전시킵니다.
나에게는 이것이 너무 무차별 적 일 수 있으며 필요하지 않은 곳에 복잡성을 추가하는 것처럼 보이지만 미래를 통한 액터 vs 일반 동기 또는 비동기 논리를 사용해야하는 곳에 대한 토론은 찾을 수 없습니다. 동료가 비슷한 말을 한 후에 나는 자세를 숙고하기 시작했습니다. 나는 최근에 작업을 숙고하고 불변의 구현에서 동일한 결과를 안전하게 얻을 수 있기 때문에 다른 행위자를 만드는 것을 피한 몇 가지 사례를 최근에 깨달았습니다. 예를 들어 DB 또는 파일에서 구성 값을 매우 드물게 액세스하는 곳과 같은 곳에서 얻는 것 결과는 실제 사용 사례입니다.
특히, 불변 상태로 플레이하는 경우 액터는 복잡성을 생성하고 처리량을 제한합니다. 예를 들어 객체의 순수한 함수는 동시성으로 모든 수준의 위험없이 동시에 호출 할 수 있습니다. 행위자는 한 번에 하나의 메시지 만 처리 할 수 있습니다. 또 다른 고려 사항은 선물 사용을 시작하지 않는 한 결과를 기다려야하는 경우 스레드를 고정시키는 것입니다. 그러나 비동기 메시징 또는 스케일에 대해 걱정할 필요가없는 경우에는 액터를 사용하는 것이 과도하게 보일 수 있습니다.
내 질문은-배우를 사용하기에 나쁜 시간이 있습니까? 얼랭이 어떻게 생겼는지 궁금하고 다른 사람들의 통찰력을 정말로 좋아할 것입니다. 또는 배우 사용에 관한 몇 가지 원칙이있는 경우.
ask
배우와 평범한 것을 사용하는 것의 트레이드 오프가 무엇인지 구체적으로 알고 싶습니다 Future
.