https

...
  • Проверяю. Аптайм около 5 минут, 200 кбайт трафика передано. Форум работает, статистика работает. Сервер смотрит в локальную сеть, пинги 10-20 мс.
  • Использовал версию 0.7.7.0, в ночной сборке проблемы с сетью еще не прошли, как я понимаю. Сервер продержался около 10 минут, выдержал 1000 пингов, а затем стал отбиваться ошибкой socket_open_tcp fail (сокеты закончились что ли? О_о). Перезапуск сервера ничего не дает. Попробую свежую ночную сборку.
  • Нет, пока лажа с мьютексами не исправлена бессмысленно тестировать.
  • Проверяю на ночной сборке. Без нагрузки пинги летят очень быстро.
    Включил нагрузку - постоянное обновление TinyStat и TinyBoard, как только страница загружается.
    Пинги поднимаются порой до 500 мс (напомню, локальная сеть). Согласно логам, часть пакетов сервером постепенно перестает обрабатываться (tcp dumped). Обновление форума и статистики сначала занимало доли секунды. По отдельности загружается примерно за 0,6с, вместе запрос на TinyStat обрабатывается за 1-2с, а на TinyBoard - от 2 до 16 секунд (иногда бывают "the connection has timed out"). На доске отладки все чаще появляется информация о невозможности открыть сокет.

    Сервер поднят двадцать минут.
    64 bytes from 192.168.56.101: icmp_req=1149 ttl=64 time=292 ms
    64 bytes from 192.168.56.101: icmp_req=1150 ttl=64 time=320 ms
    64 bytes from 192.168.56.101: icmp_req=1151 ttl=64 time=406 ms
    64 bytes from 192.168.56.101: icmp_req=1152 ttl=64 time=621 ms
    64 bytes from 192.168.56.101: icmp_req=1153 ttl=64 time=425 ms
    64 bytes from 192.168.56.101: icmp_req=1154 ttl=64 time=344 ms
    64 bytes from 192.168.56.101: icmp_req=1155 ttl=64 time=416 ms
    64 bytes from 192.168.56.101: icmp_req=1156 ttl=64 time=18.3 ms
    64 bytes from 192.168.56.101: icmp_req=1157 ttl=64 time=657 ms
    64 bytes from 192.168.56.101: icmp_req=1158 ttl=64 time=147 ms
    64 bytes from 192.168.56.101: icmp_req=1159 ttl=64 time=603 ms
    --- 192.168.56.101 ping statistics ---
    1187 packets transmitted, 1187 received, 0% packet loss, time 1187548ms
    rtt min/avg/max/mdev = 3.647/205.394/2100.475/268.631 ms, pipe 3
    HTTP-Сервер v 0.6 для KolibriOS

    Статистика: (после данного запроса)

    - Документов принято: 000000926
    - Байт переданно : 000472396
    Загрузка процессора по версии CPU в VirtualBox: https около 12%, board около 25%.

    ...Сервер работает 24 минуты. Из двух запросов, пришедших в течение секунды, обрабатывается только один.
    Доктор, это болеет https или сетевой стек?
  • Mario wrote:Нет, пока лажа с мьютексами не исправлена бессмысленно тестировать.
    На работу https это видимо не повлияло. Пробовал 2084ю ревизию.
  • Вот не факт! Вот тебе к примеру два файла от ya.ru для сравнения что выдают рабочее и больное ядрышки:
    ya.ru.7z
  • Да и если уж так интересно поэкспериментировать, то вот ядро собранное из последнего SVN + откат к старым socket.inc и tcp.inc из ревизии 2123, когда еще сеть работала субъективно нормально.
    kernel.7z
  • Спасибо! Попробую утречком, надеюсь. Оказывается, я проверял https на ядре 0.7.7.0 и 2084м, а на более новых - не проверял.
  • Ядро поправлено,так что лучше тестируй на последней сборке. Хотя можешь и это для разнообразия погонять.
  • Ночная сборка 2208. Аптайм 32 минуты.
    1923 packets transmitted, 1923 received, 0% packet loss, time 1924926ms
    rtt min/avg/max/mdev = 0.409/49.085/354.340/52.903 ms
    HTTP-Сервер v 0.6 для KolibriOS

    - Документов принято: 000003131
    - Байт переданно : 001549568
    Есть некоторое количество неудачных открытий сокетов, но вроде все нормально. По версии VirtualBox, загрузка процессора HTTPS от 2 до 14 процентов, board - от 5 до 30. Сейчас попробую массово отправлять сообщения на форум.
  • Сервер продержался запущенным 40 минут. Я начал активно постить сообщения в форум (1 в секунду), и место на rd быстро кончилось, да так, что форма для ответа в файл board.htm не поместилась. Стал активно удалять ненужное с rd - и boardlog занял 600 кб, пришлось доску отладки выключить. Приостановить сервер для удаления board.htm (он же должен перезаписаться!) я не догадался, удалил в процессе работы сервера - и сервер упал и не захотел подниматься. Отрабатывать 4 запроса одновременно у сервера не получается, не то процессорного времени не хватает, не то он как-то не так работает.

    upd: реально страница форума TinyBoard загружается дольше, моя спамилка отправляет только 1 запрос в 12 секунд. А ведь у GridWorks вроде бы на Колибри (точнее, Menuet) сервер работал...

    ------

    Эксперимент продолжается. На 30й минуте завис Firefox со страничкой-спамилкой :D Да не какой-нибудь 6й, а самый что ни на есть Iceweasel 3.5 из debian-stable.
    HTTP-Сервер v 0.6 для KolibriOS

    Статистика: (после данного запроса)

    - Документов принято: 000001323
    - Байт переданно : 005490518
    - Местонахождение : Статистика

    Гостевая:

    - Сообщений : 000000142
    - Размер в байтах : 000030066
    - Местонахождение : Гостевая

    09:43:18
    18.09.11
    Пинги летят:
    64 bytes from 192.168.56.101: icmp_req=2171 ttl=64 time=22.3 ms
    64 bytes from 192.168.56.101: icmp_req=2172 ttl=64 time=20.9 ms
    64 bytes from 192.168.56.101: icmp_req=2173 ttl=64 time=18.1 ms
    64 bytes from 192.168.56.101: icmp_req=2174 ttl=64 time=65.2 ms
    64 bytes from 192.168.56.101: icmp_req=2175 ttl=64 time=70.6 ms
    64 bytes from 192.168.56.101: icmp_req=2176 ttl=64 time=15.0 ms
    64 bytes from 192.168.56.101: icmp_req=2177 ttl=64 time=21.7 ms
    64 bytes from 192.168.56.101: icmp_req=2178 ttl=64 time=18.6 ms
    64 bytes from 192.168.56.101: icmp_req=2179 ttl=64 time=18.4 ms
    64 bytes from 192.168.56.101: icmp_req=2180 ttl=64 time=16.9 ms
    Освободил на рамдрайве около 1 мегабайта. Board.htm сейчас занимает 30 килобайт. Пойду погуляюНавещу свою выздоравливающую девочку в больничке, и затем отпишусь о результатах эксперимента.

    ----

    upd: и ждать не пришлось. На примерно 200м сообщении в форуме (40 минут аптайма) сервер умер. Пинги идут, а https не отвечает, выводит ошибку socket_open_tcp (80B56000) net_socket_free (80B56000) socket_open_tcp(fail). ЗаDDoSил :D
  • Новые опыты. Версия 0.7.5.0. Сетевой стек гораздо стабильнее, похоже. Аптайм 2+ часа, и пока что (тьфу-тьфу) работает.
    Размер файла board.htm достиг 50161 байта, сервер передает только первые 50000 байт из этого файла, так что спамилка больше не работает :(
    Раз в час примерно система (Колибри) подвисает, видимо, из-за HTTPS или еще чего-то. Пинги не проходят, мышь еле шевелится. Впервые у меня такое было, когда я открыл доску отладки и запросил по сети boardlog.txt. Не знаю, как в новых версиях, но надеюсь, что такого нет. Попробую повторить тот же трюк.
    upd: Все проще, кажется. В 0.7.5.0 зависания происходят, когда обрывается соединение со стороны клиента. Ночную сборку попробую обязательно, но пока сервер работает, не хочу его перезагружать.
    С пингами все печальнее:
    --- 192.168.56.101 ping statistics ---
    1867 packets transmitted, 1608 received, +152 errors, 13% packet loss, time 1870108ms
    rtt min/avg/max/mdev = 1.179/7862.327/190508.669/30181.161 ms, pipe 190
    Зато статистика сервера самая крутая:
    HTTP-Сервер v 0.6 для KolibriOS

    Статистика: (после данного запроса)

    - Документов принято: 000002224
    - Байт переданно : 057686297
    - Местонахождение : Статистика

    Гостевая:

    - Сообщений : 000000243
    - Размер в байтах : 000050000
    - Местонахождение : Гостевая

    19:55:18
    18.09.11

    ВЫВОД: С https все нормально, проблемы недоступности сервера (открытия сокетов) - в ядре.
  • В ночной сборке (r2208) субъективно загрузка процессора меньше раза в два, скорость реагирования выше в несколько раз, и вместо зависания всей системы при обрыве соединения со стороны клиента задумывается только https. Перезапуск https не помогает.
    Пока не будет ясно, чем вызваны проблемы с сетью, и эти проблемы не будут исправлен, Колибри использовать в качестве сервера нельзя. :(
  • SoUrcerer wrote:В ночной сборке (r2208) субъективно загрузка процессора меньше раза в два, скорость реагирования выше в несколько раз
    Serge уже отписался же.
    SoUrcerer wrote:Пока не будет ясно, чем вызваны проблемы с сетью, и эти проблемы не будут исправлен, Колибри использовать в качестве сервера нельзя.
    Не знаю - сетевые технологии не совсем моя стихия, опыта очень мало.
  • Who is online

    Users browsing this forum: No registered users and 3 guests