Russian Qt Forum
Ноябрь 23, 2024, 10:09 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Любопытно, на Qt можно написать реальный многопользовательский сервер?  (Прочитано 6767 раз)
niXman
Гость
« : Декабрь 07, 2009, 11:08 »

Всем хай и успешной трудовой недели!

Я тут вот о чем подумал: А можно ли на Qt написать реальный многопользовательский сервер?
Т.е. то что его можно написать - понятно, но на сколько он будет более ресурсоемкий в сравнении с сервером написанным на Си, и использующим epoll() и pthreads ?
Qt предоставляет все необходимое для этого: сокеты, мьютексы, уайт-кондиции, семафоры, в общем все что нужно. То, что времязатраты на написание такого сервера на Qt уменьшаться, сомневаюсь. А как же производительность? Интересует приблизительная оченка. Так сказать - интуитивная Улыбающийся Нагрузка - 6000-8000 онлайн, прием-передача...пускай десятибайтовые пакеты.
Записан
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #1 : Декабрь 07, 2009, 14:20 »

Высоконагруженный сервер на Qt, реально ли?
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
drsm
Гость
« Ответ #2 : Декабрь 07, 2009, 17:33 »

нету смысла, возми libevent
Записан
niXman
Гость
« Ответ #3 : Декабрь 07, 2009, 17:55 »

нету смысла, возми libevent
Так я не собираюсь писать сервер на Qt. Просто любопытно. Я по старинке, нижний уровень на sockets, epoll. И pthread для синхронизации/диспечеризации/обработки в рабочих потоках.

А libevent, не стал бы использовать. Удобство не на много лучше, а прозрачность теряется Грустный
Записан
drsm
Гость
« Ответ #4 : Декабрь 08, 2009, 14:13 »

прозрачность чего теряется о_О?
посмотри: http://seul.org/~nickm/libevent-book/Ref6_bufferevent.html
тут и epool и kqueue и select под виндой.
+ отличная надстройка для работы с буферами.
я вот сейчас сервак пищу на винде, а в продакшен он пойдет на линухе (или фрибсд).
Записан
niXman
Гость
« Ответ #5 : Декабрь 08, 2009, 15:34 »

Цитировать
прозрачность чего теряется о_О?
POSIX API.

Цитировать
Посмотрел. Я знаком с этой либой Подмигивающий

Цитировать
тут и epool и kqueue и select под виндой.
Что-то я не догоняю...какое отношение венда имеет к серверам?

Цитировать
я вот сейчас сервак пищу на винде, а в продакшен он пойдет на линухе (или фрибсд).
А смысл в венде писать? имхо, изврат.

Да и вообще, интересует, создавал ли кто-то сервер на Qt.
Записан
BRE
Гость
« Ответ #6 : Декабрь 08, 2009, 15:36 »

Да и вообще, интересует, создавал ли кто-то сервер на Qt.
Думаю что нет.
Тот кто сможет - воспользуется более подходящими инструментами, а кто не сможет - тот не сможет....  Улыбающийся
Записан
niXman
Гость
« Ответ #7 : Декабрь 08, 2009, 15:46 »

Цитировать
Думаю что нет.
И я так думаю...но мало ли...

Цитировать
Тот кто сможет - воспользуется более подходящими инструментами
Кстати про "подходящие инструменты" - однажды писал сервер для 5000 реалтайм, на boost::asio(по рекомендации..не скажу кого Подмигивающий). Так вот, он тормозливый получился не на шутку! Еще писал систему принятия решений на основе нейронной сети. Так для взаимодействия между нейронами, решил использовать boost::signals(signals2 тогда еще не было(хотя эти тормозят еще больше Смеющийся но потокобезопасны!)). В итоге, всю сеть пришлось переписывать на кэлбэки. Старо, но как шустро работала! Сечас кутешные сигналы опробовал, доволен как слон. Но для динамической конфигурации сети тоже тяжеловаты Грустный

Это я к тому, что не все "новое/технологичное/высокоуровневое" хорошо работает Подмигивающий boost уважаю за то, что позволяет реально сократить код. Но некоторые его части не использую принципиально.
« Последнее редактирование: Декабрь 08, 2009, 15:48 от niXman » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.045 секунд. Запросов: 22.