Модераторы: diadiavova, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Тормозит TcpClient, хочу много и быстро, а он... 
:(
    Опции темы
kexic
  Дата 23.4.2009, 17:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Здравствуйте, друзья!

Хочу проиндексировать рунет ))) Начал ковырять сокеты и сразу же обломался. С такой скоростью, как они у меня создаются, я его проиндексирую лет эдак через 500.  ))) Хотя наверняка это я где-то накосячил.

Посмотрите, пожалуйста, скажите, где неправ...

Тестирую следующий код:

Код

Dim urls() As String = {"www.yandex.ru", "www.google.ru", "www.rambler.ru", "и т.д..."}

For i = 0 To urls.Length - 1
    Dim client As New TcpClient(urls(i), 80)
    Dim stream As NetworkStream = client.GetStream
    Dim requestBytes() As Byte = Encoding.ASCII.GetBytes("GET / HTTP/1.1" & vbCrLf & _
                                                         "Host: " & urls(i).ToString.Remove(0, 7) & vbCrLf & _
                                                         "Connection: Close")
    stream.Write(requestBytes, 0, requestBytes.Length)
    stream.Flush()
    client.Close()
Next

Console.WriteLine(Now.Minute & ":" & Now.Second & ":" & Now.Millisecond)


А вот кусок из output-a:

54:6:165
54:6:306
54:6:321
54:6:337
54:6:556
54:6:571
54:6:587
54:6:743
54:6:774
54:6:790
54:6:853
54:6:899
54:6:915
54:6:931
54:6:946
54:6:962
54:6:978
54:6:978
54:7:9
54:7:71


и это без закачки каких-либо данных и без обработки!!!!

Система - WinXP SP3, TcpIP.sys пропатчил, фаервол отключал... Короче хелп плииииз!! )

Это сообщение отредактировал(а) kexic - 23.4.2009, 21:01
PM MAIL   Вверх
diadiavova
Дата 23.4.2009, 20:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Я бы, как минимум, первые две строчки местами поменял.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
-Mikle-
Дата 23.4.2009, 20:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

Репутация: 3
Всего: 59



Думаю скорость нормальная... если ты собираешься индексировать еще и содержимое страниц, то скорость доступа к одной странице (ее скачивания) из кода будет не быстрее, чем доступ к ней из твоего броузера. Поисковые системы индексирующие интернет, работают на мощных серверах (и не одном) + работают на высокоскоростных интернет-каналах + опрашивают интернет не в одном потоке... так что, думаю что все хорошо с этим...


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
kexic
Дата 23.4.2009, 21:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



diadiavova, само собой. очепятка. поправил.

-Mikle-, в том-то и дело, что это тупо коннекты, т.е. ответы, как видишь, я не считываю. поэтому все в одном потоке. для считывания и обработки, естественно, нужны дополнительные потоки.
вообще, я нагуглил, что у ребят, кто подобной фигней заморачивается, по несколько К страниц в секунду обрабатывается. и, вроде, тоже не на суперкомпьютерах работают.
у меня для этих целей заряжена неплохая машинка на нормальном канале, так что молотить должно неплохо. если все получится, состругаю ей еще 3-4 братиков-сестричек, железо сейчас недорогое. ))
PM MAIL   Вверх
-Mikle-
Дата 23.4.2009, 22:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

Репутация: 3
Всего: 59



Просто Connect считается состоявшимся, когда после отправки запроса на Connect, на него приходит ответ... На скорость, мне кажется, тут не влияет .NET
Я сделал коннект асинхронным и потестил несколько раз, восемь имен опрашивались за время от 40 до 150 мс (это от 55 до 200 имен в секунду). Надо бы на PHP попробовать, для сравнения... Может кто-нить попробует?


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
kexic
Дата 23.4.2009, 23:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Мда... небыстро.
Давай я и правда попробую сейчас на PHP то же самое сделать. По результатам отпишу сюда.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума VB .NET
diadiavova
  • Прежде чем задать вопрос, воспользуйтесь поиском: возможно Ваш вопрос уже обсуждался и на него был получен ответ.
  • Если такой же вопрос не найден, не стоит задавать свой вопрос в любую тему, создайте новую.
  • Заголовок темы должен отображать ее суть.
  • Содержание поста должно описывать проблему понятно, но в то же время, по возможности, лаконично. Сначала следует описать суть вопроса, потом можно привести пример кода, не вынуждайте других участников угадывать в чем Ваша проблема - телепатов здесь нет.
  • Будьте взаимно вежливы и дружелюбны.
  • При оформлении сообщений используйте форматирование, примеры кода заключайте в теги [CODE=vbnet][/CODE].
  • Также ознакомьтесь с общими правилами, действующими на всем форуме.
  • Если вопрос решен, не забывайте помечать тему решенной(вверху темы есть ссылка). Кроме того, если Вы хотите отблагодарить участников, оказавших помощь в решении, можно повысить им репутацию, в случае, если у Вас менее 100 сообщений в форуме и функция изменения репутации Вам недоступна, можете написать сюда.
  • Общие вопросы по программированию на платформе .NET обсуждаются здесь.
  • Литература по VB .NET обсуждается здесь.

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

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB .NET | Следующая тема »


 




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


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

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