crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Производительность Tcp-сервера, реализованного с помощью Qt, Экспертный опрос
Nokin
  опции профиля:
сообщение 12.8.2008, 16:28
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 17
Регистрация: 12.8.2008
Пользователь №: 262

Спасибо сказали: 0 раз(а)




Репутация:   0  


Доброго времени суток!

Присматриваюсь к Qt уже неделю. До этого дела не имел, однако концепция представляется очень привлекательной.

1.
Хочется узнать мнения людей, хорошо знакомых с данным тулкитом вот по какому вопросу. Необходимо реализовать Tcp-сервер, работающий по некоторому протоколу, способный обслуживать одновременно 1000 клиентов легко. Под обслуживанием понимается:
-) Авторизация
-) Прием и получение сообщений (не более 10 в минуту в среднем по 500 байт)
Хватит ли произодительности имеющихся классов?

Выбор Qt продиктован необходимостью работы под Windows и Linux.

2.
Подскажите, имеется ли в Qt поддержка перекрытого ввода/вывода, портов завершения или других методов асинхронного ввода/вывода

3.
Если Вы считаете, что Qt пригодна для реализации поставленной задачи, обозначте, пож-та, в общих чертах решение.

Спасибо.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
sploid
  опции профиля:
сообщение 13.8.2008, 9:39
Сообщение #2


Студент
*

Группа: Участник
Сообщений: 51
Регистрация: 26.2.2008
Из: Москва
Пользователь №: 106

Спасибо сказали: 10 раз(а)




Репутация:   1  


Nokin, у тебя вполне возможно все упрется в базу, а не в работу по приему и передачи данных.

В Qt все сокеты асинхронные, что вполне может вызвать осложнения при работе с ними. Для Qt есть фича по созданию демонов и сервисов ( правда она платная и не входит в опен-соурс редакцию ).

Т.к. клиентов порядка 1000, то каждого клиента засовывать в отдельный поток может быть накладно. Некоторые специалисты считают что именно для таких задач подойдет событийная ( т.е. Qt-шная ) технология работы с сокетом.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Nokin
  опции профиля:
сообщение 13.8.2008, 10:10
Сообщение #3


Студент
*

Группа: Новичок
Сообщений: 17
Регистрация: 12.8.2008
Пользователь №: 262

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(sploid @ 13.8.2008, 10:39) *
Nokin, у тебя вполне возможно все упрется в базу, а не в работу по приему и передачи данных.


Sploid, поясни пож-та. Упрётся: это в плане совместимости (драйвера к БД) или в плане производительности?


Цитата(sploid @ 13.8.2008, 10:39) *
Для Qt есть фича по созданию демонов и сервисов ( правда она платная и не входит в опен-соурс редакцию ).


Знаю, не смущает.


Цитата(sploid @ 13.8.2008, 10:39) *
Т.к. клиентов порядка 1000, то каждого клиента засовывать в отдельный поток может быть накладно. Некоторые специалисты считают что именно для таких задач подойдет событийная ( т.е. Qt-шная ) технология работы с сокетом.


Я тоже считаю, что 1000 потоков в приложении - это перебор. Событийная технология - это слот-сигнальная?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 21.1.2025, 12:59