Ответ: Epica online
Цитата:
|
Ответ: Epica online
пахомыч, не соглашусь с твоим советом.
реально нужно 2-3 потока на ядро процессора, никак не больше. |
Ответ: Epica online
Цитата:
Плюс, ещё различные рутинные функции, лучше сделать потоком, если они нужны периодически, просто отправляется поток в сон, и выполняется рутина время от времени? Я сам как бы не знаю, может это и имеет плохие стороны, но для меня очевидно удобно. Если есть тут "подводные камни", подскажите. |
Ответ: Epica online
Цитата:
Вот тут читал по реализации серверов: http://msdn.microsoft.com/ru-ru/library/dd335942.aspx Вот что написано про однопоточную систему: Цитата:
|
Ответ: Epica online
Цитата:
1. создает 2 системных потока на ядро: один для ввода/вывода (сеть, диск), второй для логики 2. в эрланге процессы легковесные (легко запустить 100500 процессов, даже 300000 не проблема вовсе), в отличии от дотнета. |
Ответ: Epica online
из статьи "про доднед и сокеты":
Цитата:
на эрланге поставлен рекорд с 1000000 (прописью: ОДИН МИЛЛИОН) одновременных TCP/IP соединений. |
Ответ: Epica online
Да и компилятор эрланга заточен под это. Но что делать при использовании не Erlang в качестве ЯП для программирования сетей?
Вообще в статье не сказано про то, какая машина у него, сколько памяти и т.д. |
Ответ: Epica online
просьба модераторам вынести часть обсуждения в отдельную тему, и я с удовольствием продолжу.
тут вообще-то тема обсуждения онлайн-игры Epica Online |
Ответ: Сетевая часть ММО игр
Продолжаем
|
Ответ: Сетевая часть ММО игр
Существует так называемая "проблема 10000 соединений"
Подробно описана вот здесь: http://www.kegel.com/c10k.html Вот хорошее "содержание" (взято отсюда) Цитата:
Подходы, в которых используется мультиплексирование ввода/вывода (select) имеют линейный рост времени обработки от числа подключений (чем больше - тем более медленно). Подход вида "1 клиент - 1 поток" тоже нежизнеспособны, так как 1 системный поток требует 1 мб оперативной памяти. Легко посчитать сколько RAM необходимо для 100 000 подключений. Есть только несколько технологий, которые позволяют преодолеть этот барьер. Это kqueue/epoll (linux/freebsd), io completion port (windows server). Для их работы хватает одного потока. |
Ответ: Сетевая часть ММО игр
2ffinder Ты кстати обещал статью по эрлангу написать ;) Я с удовольствием почитаю :)
UPD: ставлю Eclipce и erlide, буду иногда пробовать эрланг по мере возможности |
Ответ: Сетевая часть ММО игр
я бы тоже почитал что нить про эрланг от булочника
|
Ответ: Сетевая часть ММО игр
Цитата:
|
Ответ: Сетевая часть ММО игр
Цитата:
|
Ответ: Сетевая часть ММО игр
Цитата:
Но, неупорядоченная доставка пакетов и нет контроля доставки с последующей перепосылкой. Но там где нужна гарантированная доставка пакетов: чаты, магазины (внутриигровые) - нужно либо изобретать tcp поверх udp, либо... |
Часовой пояс GMT +4, время: 00:41. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot