Показать сообщение отдельно
Старый 09.01.2011, 00:03   #16
ffinder
Дэвелопер
 
Аватар для ffinder
 
Регистрация: 10.09.2007
Сообщений: 1,442
Написано 793 полезных сообщений
(для 1,460 пользователей)
Ответ: На чем писать сервер ММО игры

для затравки: http://habrahabr.ru/blogs/erlang/111252/

имею опыт работы с Эрлангом и C#
средства, которые предоставляет .NET полностью проигрывают по удобству и возможностям.
опишу позитивные моменты Эрланга:
1. очень сильная сетевая часть. полностью решена "проблема 10000 поключений"
2. очень хорошо решены вопросы многопоточности: виртуальная машина имеет свой планировщик легковесных потоков, которых можно создвавать несколько миллионов.
3. практический функциональный язык с single assignment - очень тяжело испортить данные. нет общей памяти между микротредами - невозможно устроить race condition или deadlock.
4. неблокирующий сборщик мусора. у каждого микротреда (легковесного потока, свой стек и куча. изначально на каждый микротред выделяется 1,5 Кб памяти. сравните с 1 Мб в нативных потоках).
5. встроенная система сообщений, позволяет выстраивать логичную архитектуру.

Из недостатков нужно отметить:
1. низкая производительность - на одном уровне с Питоном (хотя под линуксом есть возможность компилировать в нативный код - скорость возрастает довольно прилично).
2. динамическая типизация. частично компенсируется утилитой для статического анализа кода (Dialyzer).

И еще раз: в серверах главное не скорость, а надежность.
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо ffinder за это полезное сообщение:
HolyDel (09.01.2011), Randomize (09.01.2011), SBJoker (09.01.2011)