Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Программирование Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3 4 5 6 7 8 9 10 .. 24   вперед  Ctrl
 Четверговые акторы  [new]
mayton
Member

Откуда: loopback
Сообщений: 34546
Добрый день коллеги.

Хотелось-бы обсудить модель акторов

А также связные с ним программные продукты:

1) Akka.IO (Java)
http://akka.io/
2) GetAkka.Net
http://getakka.net/
3) SObjectizer (C++)
http://sourceforge.net/projects/sobjectizer/
4) И другие.

Кто и где эти модели использовал. Какие были достигнуты цели. Что получилось. Что нет. Поделитесь опытом.

Спасибо.
14 окт 15, 12:18    [18277004]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 32811
mayton,

Так Erlang же...
14 окт 15, 14:30    [18278021]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
mayton
Member

Откуда: loopback
Сообщений: 34546
MasterZiv, у тебя был проект на эрланге?
14 окт 15, 14:32    [18278039]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
YesSql
Guest
Я в одном проекте использовал много идей отсюда.
14 окт 15, 17:34    [18279223]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
mayton
Member

Откуда: loopback
Сообщений: 34546
YesSql
Я в одном проекте использовал много идей отсюда.

А можно больше узнать о проекте? Что за предметная область? Какая архитектура. Сервера там..
Нагрузка?
14 окт 15, 17:49    [18279268]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
mayton
Member

Откуда: loopback
Сообщений: 34546
Тут вобщем тихо. Сверчки сверчат. Ну ладно. Похоже заглохло дело.
15 окт 15, 12:55    [18282253]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 32811
mayton
MasterZiv, у тебя был проект на эрланге?


Нет, я его вообще не знаю...
16 окт 15, 12:23    [18287126]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
mayton
Member

Откуда: loopback
Сообщений: 34546
Ладно. Если модератор не против - я буду постить сюда свои потоки сознания и эксперименты.
Модератор:
не будет
16 окт 15, 12:39    [18287239]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
mayton
Member

Откуда: loopback
Сообщений: 34546
Ап, коллеги. Прошу прощения за внезапный некро-постинг.
Ругаю себя за безделье и праздность и спешу спросить вас о
новостях мира акторов.

По прежнему для меня актуален вопрос о практике. Тоесть мой
первый пост 18277004.
17 фев 16, 19:21    [18831941]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
Dima T
Member

Откуда:
Сообщений: 10620
Практики нет, но немного узнал про акторы пока про C# читал. ИМХУ закон Амдала никто не отменял. То что параллелится - легко параллелится любыми способами, с остальным проблемы, и акторы просто один из подходов проектирования чтобы чуть-чуть сгладить эти проблемы.
17 фев 16, 19:51    [18832051]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
Dima T
Member

Откуда:
Сообщений: 10620
Из параллелизма проще кажутся lock-free алгоритмы, почитал немного про них, в т.ч. http://habrahabr.ru/company/ifree/blog/195770/
Это откровение остановило от дальнейшего глубокого изучения и собственных поделок
автор
Как водится, распараллеливание приводило к возникновению общих (shared) данных, доступ к которым требовалось синхронизировать. Как-то в одном из обсуждений мой коллега походя спросил: “а ты слышал что-нибудь о lock-free очередях?” В то время я не знал об этом ничего. Но, спросив у гугла, нашел несколько статей, в которых приводился псевдокод lock-free очереди. Прочитав их несколько раз, я ничего не понял. Точнее, я перешел в состояние “ничего не понял” после того, как, засучив рукава и сказав “щас!” всему миру (мол, все вы дураки, один я тут умный), я попытался “упростить” алгоритмы, приведя их в соответствие со здравым смыслом. Спустя месяц борьбы с segmentation fault, мой здравый смысл сдался.

но готовые реализации типовых структур (очередь, список и т.д.) мне кажутся вполне интересными для применения. В дотнете есть набор таких объектов, работают ожидаемо тормознее однопоточных аналогов, но не на столько тормознее, чтобы ими не пользоваться.
17 фев 16, 20:12    [18832105]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
mayton
Member

Откуда: loopback
Сообщений: 34546
Dima T, спасибо Дима. Это всё надо блин осмыслить.
17 фев 16, 20:41    [18832189]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
YesSql
Guest
Акторы хороши для ухода от синхронизации. Очень грубо я бы сравнил модель акторов с юникс моделью.
17 фев 16, 21:56    [18832364]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
YesSql
Guest
Модель Акторов может сидеть на thread pool. И если в пуле столько потоков сколько ядер то в этом случае минимизируется число переключения контекстов.
17 фев 16, 22:03    [18832386]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
ZyK_BotaN
Member

Откуда: Новгород-Северский
Сообщений: 98938
mayton
Добрый день коллеги.

Хотелось-бы обсудить модель акторов

А также связные с ним программные продукты:

1) Akka.IO (Java)
http://akka.io/
2) GetAkka.Net
http://getakka.net/
3) SObjectizer (C++)
http://sourceforge.net/projects/sobjectizer/
4) И другие.

Кто и где эти модели использовал. Какие были достигнуты цели. Что получилось. Что нет. Поделитесь опытом.

Спасибо.

почему среди описанного, эрланга не наблюдаю?


mayton
Кто и где эти модели использовал.

в дипломе использовал, при реализации децентрализированной, анонимной сети.

mayton
акие были достигнуты цели. Что получилось. Что нет. Поделитесь опытом.

всё было ок. понравилось.
17 фев 16, 23:00    [18832573]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
ZyK_BotaN
Member

Откуда: Новгород-Северский
Сообщений: 98938
mayton
MasterZiv, у тебя был проект на эрланге?

по работе, использовал проекты на эрланге. nosql базы.
17 фев 16, 23:01    [18832575]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
ZyK_BotaN
Member

Откуда: Новгород-Северский
Сообщений: 98938
YesSql
Акторы хороши для ухода от синхронизации. Очень грубо я бы сравнил модель акторов с юникс моделью.

ну для этого и транзакционной памяти достаточно.
17 фев 16, 23:02    [18832577]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
ZyK_BotaN
Member

Откуда: Новгород-Северский
Сообщений: 98938
YesSql
Модель Акторов может сидеть на thread pool. И если в пуле столько потоков сколько ядер то в этом случае минимизируется число переключения контекстов.

имхо, при правильной реализации ВМ, акторов может быть и в стоню раз больше чем ядер.

не нужно путать concurrent программирование и parallel программирование.
17 фев 16, 23:04    [18832583]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
ZyK_BotaN
Member

Откуда: Новгород-Северский
Сообщений: 98938
YesSql
минимизируется число переключения контекстов.

хороший актор, на зелёной нити висит. там нет проблем с переключением.
17 фев 16, 23:04    [18832587]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
YesSql
Guest
ZyK_BotaN
YesSql
Модель Акторов может сидеть на thread pool. И если в пуле столько потоков сколько ядер то в этом случае минимизируется число переключения контекстов.

имхо, при правильной реализации ВМ, акторов может быть и в стоню раз больше чем ядер.

не нужно путать concurrent программирование и parallel программирование.

Я что-нибудь говорил про количество акторов?
17 фев 16, 23:31    [18832669]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
ZyK_BotaN
Member

Откуда: Новгород-Северский
Сообщений: 98938
YesSql
Я что-нибудь говорил про количество акторов?

да. я не прав. невнимательно прочёл.
17 фев 16, 23:32    [18832670]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
YesSql
Guest
ZyK_BotaN
YesSql
минимизируется число переключения контекстов.

хороший актор, на зелёной нити висит. там нет проблем с переключением.

Хороший актор ниначем сидеть недолжен. Пул акторов обслуживается пулом потоков. Акторы входные очереди которых непусты становятся на обслуживание в пул потоков.
17 фев 16, 23:35    [18832679]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
YesSql
Guest
YesSql
ZyK_BotaN
пропущено...

хороший актор, на зелёной нити висит. там нет проблем с переключением.

Хороший актор ниначем сидеть недолжен. Пул акторов обслуживается пулом потоков. Акторы входные очереди которых непусты становятся на обслуживание в пул потоков.

Акторы при исполнении не должны простаивать ни в каких ожиданиях. Тоесть они дожны быть асинхронны с точки зрения любого ввода-вывода.
17 фев 16, 23:53    [18832728]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
YesSql
Guest
Иногда это бывает невозможным, или очень стльно усложняет актор. Тогда применяется (мной как минимум) гибридное ядро. При создании актора указывается как он будет исполнятся. пулом потоков или выделенным потоком.
17 фев 16, 23:58    [18832747]     Ответить | Цитировать Сообщить модератору
 Re: Четверговые акторы  [new]
YesSql
Guest
Уход от синхронизации. В идеальной Актор модели все данные необходимые для обработки сообщения находятся в сообщении и/или в приемном акторе. В реальной жизни данных может быть слишком много для помещения их в сообщение. в этом случае в сообщение вставляется смарт поинтер с одним жестким условием - отправляющий сообщение актор забывает о данных отправленных через смарт-поинтер и в приемном акторе они константны.
18 фев 16, 00:14    [18832784]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3 4 5 6 7 8 9 10 .. 24   вперед  Ctrl
Все форумы / Программирование Ответить