forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Болтовня (http://forum.boolean.name/forumdisplay.php?f=25)
-   -   На чем писать сервер ММО игры (http://forum.boolean.name/showthread.php?t=14019)

ffinder 09.01.2011 00:03

Ответ: На чем писать сервер ММО игры
 
для затравки: 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).

И еще раз: в серверах главное не скорость, а надежность.

pax 09.01.2011 01:19

Ответ: На чем писать сервер ММО игры
 
У меня мало очень опыта программирования сетей. Но пару слов добавлю к теме:

1. Очень хорошая статья про 3 подхода проектирования сервера на C#: Winsock
2. На C# вроде можно реализовать "горячую" замену кода используя домены приложения. ASP.NET так работает.
3. Mono позволяет запускать сервер написанный на C# на Windows, *nix, Linux, Mac

IGR 09.01.2011 02:54

Ответ: На чем писать сервер ММО игры
 
сервер на с# для мморпг чудесно работал с 1-1,5 к клиентов ( больше просто никогда небыло в онлайне :)), по этому, мое личное мнение: в наше время, учитывая время и деньги можно спокойно брать с# и не парится !! Скорость разработки быстрее, надежность больше !! Скорость работы программы я думаю не оч будет отличатся при нескольких тисяч клиентов, вот если сервер расчитывается на сотню тысяч то хз !! Но наверное для самопальной мморпг такая проблема будет просто отсутсвовать !! :-D

falcon 09.01.2011 04:33

Ответ: На чем писать сервер ММО игры
 
EVE online для реализации сервера использует python (имея онлайн в десятки тысяч..)
http://ru.wikipedia.org/wiki/Использование_Python

Amatsu 09.01.2011 10:12

Ответ: На чем писать сервер ММО игры
 
Цитата:

Сообщение от falcon (Сообщение 174937)
EVE online для реализации сервера использует python (имея онлайн в десятки тысяч..)
http://ru.wikipedia.org/wiki/Использование_Python

Да, в среднем в онлайне около 40к народу. Вот только у них там сервер - это кластерная система размером с комнату за много много баксов + выделенный канал в интернет на много много мегабит.

pax 09.01.2011 11:51

Ответ: На чем писать сервер ММО игры
 
Если кто соберется программировать клиент/сервер на C# в рамках какого-то форумного проекта, то я не против поучаствовать в свободное (если будет) время (опыт программирования сетей интересен)

Randomize 09.01.2011 13:50

Ответ: На чем писать сервер ММО игры
 
Python... Всё чаще слышу что это круто и профессионалы выбирают питон.
Видать всех устраивают эти самые "4 пробела". Меня отпугнули дико. Скажем так: Python зафейлился на первом свидании для меня. Может дать ему второй шанс?

pax 09.01.2011 14:06

Ответ: На чем писать сервер ММО игры
 
Цитата:

Сообщение от Randomize (Сообщение 174959)
Python... Всё чаще слышу что это круто и профессионалы выбирают питон.
Видать всех устраивают эти самые "4 пробела". Меня отпугнули дико. Скажем так: Python зафейлился на первом свидании для меня. Может дать ему второй шанс?

Да в общем-то не такой плохой язык. Код написанный на нем кажется компактнее, но отсутствие операторных скобок немного напрягает иногда. Работа с коллекциями у него интересная (срезы, кортежи). Я как-то писал на нем экспортер мешей из Blender в xml. Вроде ничего, но надо хорошую IDE, иначе тяжело.

PS: не обязательно 4 пробела использовать для отступа, можно Tab или например 2 пробела, главное чтобы отступ был одинаковый.

Randomize 09.01.2011 15:26

Ответ: На чем писать сервер ММО игры
 
Цитата:

Сообщение от pax (Сообщение 174960)
PS: не обязательно 4 пробела использовать для отступа, можно Tab или например 2 пробела, главное чтобы отступ был одинаковый.

Ох если бы... Или IDE у меня плохой попался.

den 09.01.2011 15:35

Ответ: На чем писать сервер ММО игры
 
А интересно, на чём написан сервер(а) для WOW и Lineage ?
Имхо это самые крупные ММО.

Randomize 09.01.2011 15:40

Ответ: На чем писать сервер ММО игры
 
Цитата:

Сообщение от Den (Сообщение 174968)
А интересно, на чём написан сервер(а) для WOW и Lineage ?
Имхо это самые крупные ММО.

Lineage 2 - Java
WoW - не знаю

pax 09.01.2011 15:44

Ответ: На чем писать сервер ММО игры
 
Цитата:

Сообщение от Den (Сообщение 174968)
А интересно, на чём написан сервер(а) для WOW и Lineage ?
Имхо это самые крупные ММО.

Вот сторонняя реализация сервера WOW http://ru.wikipedia.org/wiki/MaNGOS C++

ffinder 09.01.2011 18:23

Ответ: На чем писать сервер ММО игры
 
Цитата:

Сообщение от Randomize (Сообщение 174959)
Python... Всё чаще слышу что это круто и профессионалы выбирают питон.

я канеш дико извиняюсь, но бум питона уже кагбэ проходит.

Halk-DS 09.01.2011 23:54

Ответ: На чем писать сервер ММО игры
 
Я както наткнулся на статейку, парни делятся опытом создания своей MMOG и вот вырезка из нее:
Цитата:

Начну с выбора языка для клиента. Подавляющее большинство, а именно около 99% всего написано на Си, и тут вопрос уже даже не эффективности программирования на том или ином языке, а скорее просто судьба, так как писать свой движок для клиента неоправданно.
Придётся брать готовый, а он в 99% случаев написан на С++, хотя я нашёл одно исключение на JAVA
А вот сама статья, если интересно: http://magazine.sources.ru/2010/03/nonapolis_com/

п.с. Мне понравилась...

ffinder 10.01.2011 01:26

Ответ: На чем писать сервер ММО игры
 
Цитата:

Сообщение от Halk-DS (Сообщение 175024)
парни делятся опытом создания своей MMOG

где ты там опыт увидел? нет у них ничего кроме разговоров.

опыт описан вот тут: http://www.dtf.ru/articles/read.php?id=37995


Часовой пояс GMT +4, время: 01:17.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot