Страница: 1 | 2 | 3 | 4 | 5 | 6 |
Вопрос: русские буквы
Добавлено: 21.09.10 15:53
Автор вопроса: Ishayahu | Web-сайт:
Ответы
Всего ответов: 90
Номер ответа: 61
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #61
Добавлено: 24.09.10 18:32
Зачем в дотнете вообще винсок делать?
Ты заточил класс под модель событий Windows Forms, но забыл об одном моменте - TCP сервер - это обычно не Windows Forms, а Windows Service. И работа там идет не с синхронизацией на класс UI, а в полностью свободной потоковой модели.
VBD, ты головой думаешь? Может я вообще еще не смотрел 1 серию... Ты может и краткое содержани перескажешь тем кто не успел посмотреть?
Номер ответа: 62
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #62
Добавлено: 24.09.10 19:31
хммм а ведь верно! )
Номер ответа: 63
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #63
Добавлено: 24.09.10 20:13
ну так это.. джедаи плохого не посоветуют..
Номер ответа: 64
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #64
Добавлено: 24.09.10 22:39
Зачем в дотнете вообще винсок делать?
Ты заточил класс под модель событий Windows Forms, но забыл об одном моменте - TCP сервер - это обычно не Windows Forms, а Windows Service. И работа там идет не с синхронизацией на класс UI, а в полностью свободной потоковой модели.
VBD, ты головой думаешь? Может я вообще еще не смотрел 1 серию... Ты может и краткое содержани перескажешь тем кто не успел посмотреть?
Номер ответа: 65
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #65
Добавлено: 24.09.10 23:01
те кто не успел посомтреть - посмотрят. ну, она называется now what? и принципе это и есть описание того чего там
Номер ответа: 66
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #66
Добавлено: 24.09.10 23:17
Разумеется посмотрят. Но как будет смазано впечатление от серии, только из-за того что они благодаря VBD будут заранее знать что ... ???
VBD, ты, наверное, и на премьере матрицы стоял под кинотеатрам и всем кто входил говорил что в третьей части Нео умрет?
Номер ответа: 67
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #67
Добавлено: 24.09.10 23:21
Предлагаете еще и винсок делать общим для более мелких ?
Я предлагаю вообще не делать винсок, потому что в .NET есть классы, предоставляющие аналогичную функциональность.
Номер ответа: 68
Автор ответа:
VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #68
Добавлено: 24.09.10 23:48
Воот, успокоился. Теперь подыши и скажи "VB6 - это хорошо. Гораздо удобней и лучше каких-то там всяких C# с их полугигабайтным фраемворком и принудительной конвертацией типов.".
А вообще это только кусочек. Так что я наоборот, подогрел интерес.
Номер ответа: 69
Автор ответа:
BG(Алексей)
Вопросов: 26
Ответов: 295
Профиль | | #69
Добавлено: 25.09.10 00:31
[quote="Artyom"]Еще один ресурс, который не учтен - это потоки. 1300 потоков. Причем каждый поток получает 1 мб стека. А это уже 1.3 ГБ.
В результате при очередной попытке запустить новый поток память кончается и приложение падает.
И любая реализация TCP-сервера, основаная на потоках (причем не важно как именно, напрямую на Thread, на ThreadPool, на BackgroundWorker или на чем еще) не сможет обслуживать большое количество клиентов. Отличие в том что в случае использование ThreadPool приложение не упадет, а просто перестанет принимать подключения клиентов, так как ThreadPool заполнится (порядка 1000 потоков) и новые потоки просто не будут создаваться.
Даже если не планируется что сервером будут пользоваться большое кол-во клиентов, нужно понимать что при желании любой недоброжелатель может подключить к серверу фиктивных клиентов и он упадет.Раз пошла такая пьянка, то вопрос к тебе такой.
Сейчас пишу (в большей степени для самообразования, но не буду зарекаться, может что и выйдет) на WCF чат. Чат уже рабочий, приделал передачу файлов, сейчас хочу попробовать сделать Voice и Video. Но вопрос не в этом.
Какие там подводные камни можно ожидать? Уж больно хорошо ты расписал выше указанное.
Номер ответа: 70
Автор ответа:
BG(Алексей)
Вопросов: 26
Ответов: 295
Профиль | | #70
Добавлено: 25.09.10 00:33
В результате при очередной попытке запустить новый поток память кончается и приложение падает.
И любая реализация TCP-сервера, основаная на потоках (причем не важно как именно, напрямую на Thread, на ThreadPool, на BackgroundWorker или на чем еще) не сможет обслуживать большое количество клиентов. Отличие в том что в случае использование ThreadPool приложение не упадет, а просто перестанет принимать подключения клиентов, так как ThreadPool заполнится (порядка 1000 потоков) и новые потоки просто не будут создаваться.
Даже если не планируется что сервером будут пользоваться большое кол-во клиентов, нужно понимать что при желании любой недоброжелатель может подключить к серверу фиктивных клиентов и он упадет.
Раз пошла такая пьянка, то вопрос к тебе такой.
Сейчас пишу (в большей степени для самообразования, но не буду зарекаться, может что и выйдет) на WCF чат. Чат уже рабочий, приделал передачу файлов, сейчас хочу попробовать сделать Voice и Video. Но вопрос не в этом.
Какие там подводные камни можно ожидать? Уж больно хорошо ты расписал выше указанное.
Номер ответа: 71
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #71
Добавлено: 25.09.10 02:16
У стандартных биндингов WCF таких проблем не должно быть. Разумеется, это в самих биндингах. Вопрос еще в том как реализован сервис.
Ты кстати какой биндинг используешь?
Номер ответа: 72
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #72
Добавлено: 25.09.10 10:35
а вот каждому из 1300 потоков, господа, разве нельзя указать, скажем размеры буферов или чего-либо другого, в результате чего потоки станут кушать меньше памяти?
Номер ответа: 73
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #73
Добавлено: 25.09.10 11:25
Я ж показал что буферы здесь не играют погоды.
Даже если подключиться максимально возможное кол-во клиентов (кажется около 65000), то с буферов по 8 кб на клиента наберется 0.5ГБ всего.
А как ты предлагаешь уменьшить размер памяти, который выделяется потоку под стек?
Номер ответа: 74
Автор ответа:
Ishayahu
ICQ: 329944992
Вопросов: 4
Ответов: 21
Web-сайт:
Профиль | | #74
Добавлено: 25.09.10 21:22
я извиняюсь, что влезаю в такой интересный спор (завтра засяду его разбирать), но на мой вопрос по поводу вопросов при посылке сообщений на сервер так и остался без ответа.
не бросайте, пожалуйста!
очень уж хочется разобраться, где же там собака зарыта!
Номер ответа: 75
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #75
Добавлено: 25.09.10 22:50
в новой теме твоя собака зарыта. кнопочка "Новая тема"
А как ты предлагаешь уменьшить размер памяти, который выделяется потоку под стек?
честно говоря надеялся, что ТЫ предложишь