2012-03-16 3 views
2

Я работаю с клиентами веб-сервиса, и они медленны при первом вызове. Вместо того, чтобы всегда создавать совершенно новый, я хотел бы использовать актеров и сказать 5 актеров, чтобы обернуть клиентов веб-сервисов. Поскольку клиенты веб-сервисов не являются потокобезопасными (по крайней мере, с библиотекой, которую я использовал для их создания), это имеет смысл.Актеры и работники Scala

Я подумал о том, что у вас есть родительский актер, который передаст работу пяти рабочим, один за другим в круговой манере.

Но было бы лучше просто передать первый доступный. Я мог отслеживать это состояние в родительском актере, но мне было интересно, можно ли сделать что-то подобное проще и если оно уже поддерживается каркасом?

Я использую простых актеров scala, а не AKKA, но я открыт для всех предложений.

Спасибо.

ответ

7

Звучит как идеальный потребительной случае для маршрутизатора со стратегией RoundRobin: http://doc.akka.io/docs/akka/2.0/scala/routing.html

Акка-актер-2.0.jar всего 1 зависимость от благоговения

+0

Привет Виктор, как ни странно, еще один ответ был удалили, где утверждалось, что актеры в Scala 2.10 будут заменены akka 2.0 - знаете ли вы, верно ли это? –

+1

Не знаю, будет ли это в 2.10, но это произойдет в недалеком будущем. Akka - лучший выбор независимо от того, в какую версию он включен. –

+0

Работает отлично, как вы говорите: удивительный! Благодаря! –

Смежные вопросы