Страница 1 из 4 1234 ПоследняяПоследняя
Показано с 1 по 10 из 36

Тема: Win vs RedHad - почему на IIS быстрее ?

  1. #1
    Одмин Аватар для Господин Директор
    Регистрация
    21.05.2004
    Адрес
    Иркутск
    Сообщений
    9,145
    Сказал(а) спасибо
    19
    Поблагодарили 172 раз

    Win vs RedHad - почему на IIS быстрее ?

    В процессе гоняний (не лысого) БД форума на новом движке столкнулся с интересным фактом.
    Имеем 3 VDS с одинаковыми параметрами (2.4Ггц Xeon, 512 RAM, 40 диск), вертится все это под Hyper-V R2.

    VDS1 - Win03 + IIS6+mySQL 5.1+php 5.3
    VDS2 - Win08 (Standart, x86) + IIS7+mySQL 5.1+php 5.3
    VDS3 - CentOS 5.4(final) + apache +mySQL 5.1+php 5.3

    Все живет на одной железке, настроено стоком, без тюнинговых операций. Копии базы везде одинаковы.

    Скорость чтения\записи на виртуальные винты одинакова (10-10.5мб
    сек), в Win03 даже чуть поменьше.

    Собственно, вопрос: почему операции поиска по базе на IIS6\7 с прокладкой в виде "неродного" пхп и mysql проходят быстрее, нежели на CentOS?

    Замеры производились штатным скриптом поиска по форуму, минимальный индекс поиска был сделан, результаты выводятся одинаковые, но за разное время.

    Пример (поисковые запросы по этим словам не кешированы\индексированы, поэтому цифры большие):
    Поиск по слову "сидюк":
    Win03 - 2.39
    Win08 - 2.17
    CentOS - 3.67

    Поиск по слову "продается":
    Win03 - 21.7
    Win08 - 21.7
    CentOS - 26.8

    Поиск по слову "покупаю":
    Win03 - 4.83
    Win08 - 4.92
    CentOS - 4.98

    Поиск по автору "hustla":
    Win03 - 0.35
    Win08 - 0.32
    CentOS - 0.35

    Че за хрень? Винду ставить что ли?

  2. #2
    Аватар для pref
    Регистрация
    30.09.2005
    Адрес
    Иркутск-Москва
    Сообщений
    1,610
    Сказал(а) спасибо
    8
    Поблагодарили 12 раз
    Ну, для начала исключите из цепочки php+apache и посмотрите какие запросы идут в базу. Одинаковые ли планы у запросов на винде и линуксе? Затем исключите статистические погрешности из-за разной политики дискового кэша и кэшей БД в линуксе и винде: выполните эти запросы раз 10. Если результат все еще сильно различается -- ищите во что упирается производительность запроса.

  3. #3
    Одмин Аватар для Господин Директор
    Регистрация
    21.05.2004
    Адрес
    Иркутск
    Сообщений
    9,145
    Сказал(а) спасибо
    19
    Поблагодарили 172 раз
    Кешированные запросы обрабатываются примерно за одинаковое кол-во времени, часто линкус даже быстрее (0.04 с у винды и 0.02 - 0.04с у линукса).
    Запросы в БД идентичны на всех трех системах.
    Самый "затык" образуется при поиске именно не кешированного запроса - почему-то виндовые системы обрабатывают его быстрее, хотя мне всегда казалось, что должно быть наоборот. Причем порою разница довольно существенна (десятки секунд).
    Но после однократного выполнения такого запроса все классно, все весело, все работает шустро.

    Налепил несколько тестовых скриптов, не относящихся к БД форума - все работает быстро (примитивные операции создать-удалить-записать-вывести по критериям и тп), на всех системах время выполнения одинаково (с учетом погрешности).

    В своп по статам ни винда, ни линух ничего не ложат.
    Загрузка диска в момент поиска - 100% на всех системах.

  4. #4
    Аватар для pref
    Регистрация
    30.09.2005
    Адрес
    Иркутск-Москва
    Сообщений
    1,610
    Сказал(а) спасибо
    8
    Поблагодарили 12 раз
    Кэш просто немного по-разному работает, на рабочей системе под нагрузкой все будет примерно одинаково.

  5. #5
    Одмин Аватар для Господин Директор
    Регистрация
    21.05.2004
    Адрес
    Иркутск
    Сообщений
    9,145
    Сказал(а) спасибо
    19
    Поблагодарили 172 раз
    Тогда повешу хус на винду
    А что... Картиночки всякие, мышкой клик-клик - лепота ))))))

  6. #6

    Регистрация
    30.08.2006
    Сообщений
    643
    Сказал(а) спасибо
    0
    Поблагодарили 0 раз

    Re: Win vs RedHad - почему на IIS быстрее ?

    Цитата Сообщение от Judge
    Скорость чтения\записи на виртуальные винты одинакова (10-10.5 мб сек), в Win03 даже чуть поменьше.
    Чота совсем уж мало. Не поедет оно по-моему.

    Обычный саташный винт пишет в 10 раз быстрее:
    Код:
    # dd if=/dev/zero of=/usr/public/test bs=1024k count=1024
    1024+0 records in
    1024+0 records out
    1073741824 bytes transferred in 10.576784 secs (101518745 bytes/sec)
    Ггг... А так на RAID 5EE из SAS:
    Код:
    # dd if=/dev/zero of=/usr/public/test bs=1024k count=1024
    1024+0 records in
    1024+0 records out
    1073741824 bytes transferred in 3.131121 secs (342925697 bytes/sec)

  7. #7
    Одмин Аватар для Господин Директор
    Регистрация
    21.05.2004
    Адрес
    Иркутск
    Сообщений
    9,145
    Сказал(а) спасибо
    19
    Поблагодарили 172 раз
    Эт же VDS, тут 10мб\сек можно сказать даже шикарно
    Чота совсем уж мало. Не поедет оно по-моему.
    Если уж едет на гавеном виртуальном хостинге с сотней сайтов на одном серваке, то там поедет точно

    Ну и после кеширования все радует глаз:
    # hdparm -t -T /dev/hda1

    /dev/hda1:
    Timing cached reads: 2812 MB in 1.99 seconds = 1412.07 MB/sec
    Timing buffered disk reads: 28 MB in 3.08 seconds = 9.08 MB/sec

  8. #8

    Регистрация
    30.08.2006
    Сообщений
    643
    Сказал(а) спасибо
    0
    Поблагодарили 0 раз
    Цитата Сообщение от Judge
    Если уж едет на гавеном виртуальном хостинге с сотней сайтов на одном серваке, то там поедет точно
    Дык на гавеном виртуальном хостинге MySQL поди вынесен на отдельный сервер, а у тебя так понимаю будет все вместе в 512 мегабайтах ютиться. Тормозить будет вся эта конструкция.

    Сколько у тебя один процесс httpd отъедает памяти сейчас?

  9. #9
    Одмин Аватар для Господин Директор
    Регистрация
    21.05.2004
    Адрес
    Иркутск
    Сообщений
    9,145
    Сказал(а) спасибо
    19
    Поблагодарили 172 раз
    512 - это просто тестовая конструкция, конечный VDS будет пошикарнее.
    Можно конечно попробовать в те же деньги поискать живой дедик, но что-то не могу найти компанию с хорошей репутацией у которых дешманские условия. А все именитые сцуко от 70-100 баксов в месяц хотят

  10. #10

    Регистрация
    30.08.2006
    Сообщений
    643
    Сказал(а) спасибо
    0
    Поблагодарили 0 раз
    А вариант поставить свою машину к кому-нибудь из местных провайдеров на площадку? Даже обычная десктопная машина будет в разы лучше любого VDS. Стоимость в месяц за место будет мне кажется примерно равна стоимости хорошему VDS. Попробуй прозвонить узнать цены.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
-->