|
Болтовня Разговоры на любые темы (думайте, о чем пишите) |
09.01.2011, 00:03
|
#16
|
Дэвелопер
Регистрация: 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 за это полезное сообщение:
|
|
09.01.2011, 01:19
|
#17
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: На чем писать сервер ММО игры
У меня мало очень опыта программирования сетей. Но пару слов добавлю к теме:
1. Очень хорошая статья про 3 подхода проектирования сервера на C#: Winsock
2. На C# вроде можно реализовать "горячую" замену кода используя домены приложения. ASP.NET так работает.
3. Mono позволяет запускать сервер написанный на C# на Windows, *nix, Linux, Mac
|
(Offline)
|
|
09.01.2011, 02:54
|
#18
|
Blitz's Shame !!
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений (для 2,013 пользователей)
|
Ответ: На чем писать сервер ММО игры
сервер на с# для мморпг чудесно работал с 1-1,5 к клиентов ( больше просто никогда небыло в онлайне ), по этому, мое личное мнение: в наше время, учитывая время и деньги можно спокойно брать с# и не парится !! Скорость разработки быстрее, надежность больше !! Скорость работы программы я думаю не оч будет отличатся при нескольких тисяч клиентов, вот если сервер расчитывается на сотню тысяч то хз !! Но наверное для самопальной мморпг такая проблема будет просто отсутсвовать !!
|
(Offline)
|
|
09.01.2011, 04:33
|
#19
|
Разработчик
Регистрация: 12.07.2008
Сообщений: 523
Написано 196 полезных сообщений (для 470 пользователей)
|
Ответ: На чем писать сервер ММО игры
EVE online для реализации сервера использует python (имея онлайн в десятки тысяч..)
http://ru.wikipedia.org/wiki/Использование_Python
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
09.01.2011, 10:12
|
#20
|
Дэвелопер
Регистрация: 24.07.2008
Сообщений: 1,544
Написано 1,095 полезных сообщений (для 2,706 пользователей)
|
Ответ: На чем писать сервер ММО игры
Сообщение от falcon
|
Да, в среднем в онлайне около 40к народу. Вот только у них там сервер - это кластерная система размером с комнату за много много баксов + выделенный канал в интернет на много много мегабит.
|
(Offline)
|
|
Эти 3 пользователя(ей) сказали Спасибо Amatsu за это полезное сообщение:
|
|
09.01.2011, 11:51
|
#21
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: На чем писать сервер ММО игры
Если кто соберется программировать клиент/сервер на C# в рамках какого-то форумного проекта, то я не против поучаствовать в свободное (если будет) время (опыт программирования сетей интересен)
|
(Offline)
|
|
09.01.2011, 13:50
|
#22
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,358
Написано 2,472 полезных сообщений (для 6,854 пользователей)
|
Ответ: На чем писать сервер ММО игры
Python... Всё чаще слышу что это круто и профессионалы выбирают питон.
Видать всех устраивают эти самые "4 пробела". Меня отпугнули дико. Скажем так: Python зафейлился на первом свидании для меня. Может дать ему второй шанс?
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
|
(Offline)
|
|
09.01.2011, 14:06
|
#23
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: На чем писать сервер ММО игры
Сообщение от Randomize
Python... Всё чаще слышу что это круто и профессионалы выбирают питон.
Видать всех устраивают эти самые "4 пробела". Меня отпугнули дико. Скажем так: Python зафейлился на первом свидании для меня. Может дать ему второй шанс?
|
Да в общем-то не такой плохой язык. Код написанный на нем кажется компактнее, но отсутствие операторных скобок немного напрягает иногда. Работа с коллекциями у него интересная (срезы, кортежи). Я как-то писал на нем экспортер мешей из Blender в xml. Вроде ничего, но надо хорошую IDE, иначе тяжело.
PS: не обязательно 4 пробела использовать для отступа, можно Tab или например 2 пробела, главное чтобы отступ был одинаковый.
|
(Offline)
|
|
09.01.2011, 15:26
|
#24
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,358
Написано 2,472 полезных сообщений (для 6,854 пользователей)
|
Ответ: На чем писать сервер ММО игры
Сообщение от pax
PS: не обязательно 4 пробела использовать для отступа, можно Tab или например 2 пробела, главное чтобы отступ был одинаковый.
|
Ох если бы... Или IDE у меня плохой попался.
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
|
(Offline)
|
|
09.01.2011, 15:35
|
#25
|
Дэвелопер
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений (для 2,419 пользователей)
|
Ответ: На чем писать сервер ММО игры
А интересно, на чём написан сервер(а) для WOW и Lineage ?
Имхо это самые крупные ММО.
|
(Offline)
|
|
09.01.2011, 15:40
|
#26
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,358
Написано 2,472 полезных сообщений (для 6,854 пользователей)
|
Ответ: На чем писать сервер ММО игры
Сообщение от Den
А интересно, на чём написан сервер(а) для WOW и Lineage ?
Имхо это самые крупные ММО.
|
Lineage 2 - Java
WoW - не знаю
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
09.01.2011, 15:44
|
#27
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: На чем писать сервер ММО игры
Сообщение от Den
А интересно, на чём написан сервер(а) для WOW и Lineage ?
Имхо это самые крупные ММО.
|
Вот сторонняя реализация сервера WOW http://ru.wikipedia.org/wiki/MaNGOS C++
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
09.01.2011, 18:23
|
#28
|
Дэвелопер
Регистрация: 10.09.2007
Сообщений: 1,442
Написано 793 полезных сообщений (для 1,460 пользователей)
|
Ответ: На чем писать сервер ММО игры
Сообщение от Randomize
Python... Всё чаще слышу что это круто и профессионалы выбирают питон.
|
я канеш дико извиняюсь, но бум питона уже кагбэ проходит.
|
(Offline)
|
|
09.01.2011, 23:54
|
#29
|
Разработчик
Регистрация: 09.08.2006
Адрес: Украина
Сообщений: 431
Написано 65 полезных сообщений (для 53 пользователей)
|
Ответ: На чем писать сервер ММО игры
Я както наткнулся на статейку, парни делятся опытом создания своей MMOG и вот вырезка из нее:
Начну с выбора языка для клиента. Подавляющее большинство, а именно около 99% всего написано на Си, и тут вопрос уже даже не эффективности программирования на том или ином языке, а скорее просто судьба, так как писать свой движок для клиента неоправданно.
Придётся брать готовый, а он в 99% случаев написан на С++, хотя я нашёл одно исключение на JAVA
|
А вот сама статья, если интересно: http://magazine.sources.ru/2010/03/nonapolis_com/
п.с. Мне понравилась...
|
(Offline)
|
|
10.01.2011, 01:26
|
#30
|
Дэвелопер
Регистрация: 10.09.2007
Сообщений: 1,442
Написано 793 полезных сообщений (для 1,460 пользователей)
|
Ответ: На чем писать сервер ММО игры
Сообщение от Halk-DS
парни делятся опытом создания своей MMOG
|
где ты там опыт увидел? нет у них ничего кроме разговоров.
опыт описан вот тут: http://www.dtf.ru/articles/read.php?id=37995
|
(Offline)
|
|
Эти 5 пользователя(ей) сказали Спасибо ffinder за это полезное сообщение:
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 10:30.
|