Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Альтернатива IOCP под никсы 
:(
    Опции темы
REZiaMIX
Дата 5.4.2010, 11:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 346
Регистрация: 3.11.2007

Репутация: нет
Всего: 4



Есть ли аналог виндовым IO Completion Ports под линух ? 
Какое самое производительно решение для построения сетевого сервера?(мб готовые фреймворки?)


--------------------
user posted image
PM MAIL   Вверх
boostcoder
Дата 5.4.2010, 11:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 16
Всего: 110



Цитата(REZiaMIX @  5.4.2010,  11:11 Найти цитируемый пост)
Какое самое производительно решение для построения сетевого сервера?

epoll, kqueue. в инете полно документации.


Цитата(REZiaMIX @  5.4.2010,  11:11 Найти цитируемый пост)
мб готовые фреймворки?

boost.asio
PM WWW   Вверх
REZiaMIX
Дата 5.4.2010, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 346
Регистрация: 3.11.2007

Репутация: нет
Всего: 4



Цитата(boostcoder @ 5.4.2010,  11:25)
Цитата(REZiaMIX @  5.4.2010,  11:11 Найти цитируемый пост)
Какое самое производительно решение для построения сетевого сервера?

epoll, kqueue. в инете полно документации.


Цитата(REZiaMIX @  5.4.2010,  11:11 Найти цитируемый пост)
мб готовые фреймворки?

boost.asio

thx smile
Хотелось бы нечто подобное:
Код

class CMyServer : public mega_network_framework
{
...
};

void onRead(CClientContext * context)
{
    // пришел новый пакет
}
void onConnect(CClientContext * context)
{
    // пришел новый коннект
}
....
int main()
{
        CMyServer server;
        server.setCallback(cb_read,&onRead);
        server.setCallback(cb_connect,&onConnect);
        server.start();
}



--------------------
user posted image
PM MAIL   Вверх
boostcoder
Дата 5.4.2010, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 16
Всего: 110



тогда: http://www.alhem.net/Sockets/index.html
но, имхо, это и в подметки boost.asio не годится  smile 
PM WWW   Вверх
REZiaMIX
Дата 5.4.2010, 13:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 346
Регистрация: 3.11.2007

Репутация: нет
Всего: 4



Цитата(boostcoder @ 5.4.2010,  12:11)
тогда: http://www.alhem.net/Sockets/index.html
но, имхо, это и в подметки boost.asio не годится  smile

Ну там обычные сокеты , не подвязанные к пулу потоков. Медленно , хотелось бы чтобы и производительно и с колбеками


--------------------
user posted image
PM MAIL   Вверх
boostcoder
Дата 5.4.2010, 13:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 16
Всего: 110



Цитата(REZiaMIX @  5.4.2010,  13:11 Найти цитируемый пост)
Ну там обычные сокеты , не подвязанные к пулу потоков.

что, что, что? smile 
откуда такое желание?
вам требуется механизм мониторинга дескрипторов, я вам его и показал.
остальное за вас никто делать не будет. вы ведь программист smile 
PM WWW   Вверх
MAKCim
Дата 5.4.2010, 21:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



посмотрите в сторону libevent
это для С
самое же производительный механизм - это aio, но в линуксе для сокето он нативно не поддерживается (надо модифицировать ядро)


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
boostcoder
Дата 27.7.2010, 00:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 16
Всего: 110



Цитата(MAKCim @  5.4.2010,  21:03 Найти цитируемый пост)
самое же производительный механизм - это aio, но в линуксе для сокето он нативно не поддерживается (надо модифицировать ядро)

можете дать ссылку на компетентную документацию по модифицированию ядра и программированию с использованием aio?
благодарен.
PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0768 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.