Apache,PHP, MySQL on FreeBSD/Linux/Solaris benchmark

На доскональное знание данной темы, не может претендовать, пожалуй ни один спец, из ныне живущих на земле. ;-)
Так поможем друг другу.

Модераторы: Trinity admin`s, Free-lance moderator`s

Аватара пользователя
a_shats
Advanced member
Сообщения: 5010
Зарегистрирован: 27 авг 2002, 10:55
Откуда: Москва
Контактная информация:

Сообщение a_shats » 05 апр 2006, 11:04

Так вот за что боролись - чтобы сократить разницу результатов FreeBSD и других ОС - сократить разницу, скажем, до двух раз :gigi: .
В середине апреля - начале мая сделаем, перетестим FreeBSD.
Просьба ко всем пишущим в ветку поклонникам FreeBSD - рекомендуйте конкретные вещи по конфигу ядра. Т.е. параметр - значение. Сотни разных вариантов потестить мы просто не в состоянии - времени столько нету. Поэтому давайте согласуем конфиг и оптимизации, подходящие по Вашему мнению, здесь.
Постараемся тестить на в точности таком же железе.
Последний раз редактировалось a_shats 05 апр 2006, 11:11, всего редактировалось 1 раз.

Аватара пользователя
umanski
member
Сообщения: 25
Зарегистрирован: 12 авг 2005, 14:48

Сообщение umanski » 05 апр 2006, 11:07

Зачем же до 2 раз? До 20-30% от силы  :twisted: Мечтать так мечтать.  :lol:

Аватара пользователя
Stranger03
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 12979
Зарегистрирован: 14 ноя 2003, 16:25
Откуда: СПб, Екатеринбург
Контактная информация:

Сообщение Stranger03 » 05 апр 2006, 12:10

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

rdu
Junior member
Сообщения: 2
Зарегистрирован: 06 апр 2006, 07:30

20%

Сообщение rdu » 06 апр 2006, 07:39

umanski писал(а): Аллилуйя!!!!!!!!!!!!
За последнюю фразу респект. ИМЕННО об этом и речь! Будет более или менее объективная картина. Будет небольшая и рациональна объяснимая разница. А дальше каждый выбирает по себе. Для меня стабильность важнее скорости.
Стабильность и то что ты одну систему знаеш лучше другой, это разные вещи.
блин 20%,
ПРИМЕР

Приходит начальник и говорит:
- Я тут станок купил, деньги печатает, его нужно запрограммировать и настроить
Ты:
- Ок
Через 3 дня:
- Вот настроил, печатает $80000 в день
Начальник
- Погоди, у конкурента печатает $100000???
- А та, программа которую мы знаем лучше, умеет только $80000!!!
- Так, что мне повысить фонд ЗП вашего отдела на $2000 в месяц, и найти вместо тебя, того кто знает другую, и сможет печатать на 20% больше???
- ... (твой ответ, с учетом того, что у конкурента вполне нормально, уже давно печатаеться $100000)

Аватара пользователя
Stranger03
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 12979
Зарегистрирован: 14 ноя 2003, 16:25
Откуда: СПб, Екатеринбург
Контактная информация:

Re: 20%

Сообщение Stranger03 » 06 апр 2006, 08:59

rdu писал(а):Стабильность и то что ты одну систему знаеш лучше другой, это разные вещи.
блин 20%
Речь в этой ветке не про знания систем. Поверьте, практически каждый из присутсвующих в этом топике людей профи до мозга костей. Независимо от того, знает ли sanek1978 все системы досконально или нет, он постарался оптимизировать процесс теста и получить реальные результаты.
Но есть объективные причины, по которым та или иная ОСь показывает определенные результаты. От этого никуда не деться. Анекдот ИМХО здесь неуместен.
P.S. собственно поэтому советов по настройке Фри в топике немного. Надо бы мне самому собрать сие чудо, поковырять слегка...

Аватара пользователя
umanski
member
Сообщения: 25
Зарегистрирован: 12 авг 2005, 14:48

Сообщение umanski » 06 апр 2006, 09:09

Учитывая себестоимость станков, я - когда мне перестанет хватать 80 тыс. - замотивирую и поставлю второй станок и буду печатать 160 тыс., обслуживая их теми же силами и за ту же зарплату с тем же (минимальным) уровнем геморроя.

Это если продолжать аналогию.

P.S. Я и сам много анекдотов знаю. Тока это фсе фигня.  :lol:

rdu
Junior member
Сообщения: 2
Зарегистрирован: 06 апр 2006, 07:30

Сообщение rdu » 06 апр 2006, 09:49

umanski писал(а):Учитывая себестоимость станков, я - когда мне перестанет хватать 80 тыс. - замотивирую и поставлю второй станок и буду печатать 160 тыс., обслуживая их теми же силами и за ту же зарплату с тем же (минимальным) уровнем геморроя.
Еще один купить надо однако.

Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16622
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Сообщение gs » 06 апр 2006, 11:44

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

Аватара пользователя
umanski
member
Сообщения: 25
Зарегистрирован: 12 авг 2005, 14:48

Сообщение umanski » 06 апр 2006, 17:39

Вот именно.

Нет ничего страшнее, чем в продакшн-системах "зоопарк разводить". Я именно это имел в виду, когда говорил о том, что на разницу в 20-30% вполне себе умные люди регулярно кладут с тройным прибором и чистой советью... ;-)

smb-
Junior member
Сообщения: 19
Зарегистрирован: 12 янв 2006, 20:20

Сообщение smb- » 06 апр 2006, 21:53

Пошарил в рассылке фряшной(freebsd.perfomance) - позавчера-вчера поднимали тему насчет dual-core opterons и их производительности (mysql), помусолили, потом появился некто Steven Hartland(committer, если не ошибаюсь, и довольно серъезный, подробнее инфы пока не нашел) и заявил, что лучше всего для mysql under FreeBSD_6 использовать такую вот связку ;)
ULE + libthr + TSC + context_time.patch + cpu_acct_1.patch + cpu_acct_2.patch
The biggest increases coming from libthr ( thanks DavidXu ) and the ULE scheduler.

Код: Выделить всё

Adding these jumps from a baseline:
select_index    2000000 8       0       18624.60
to:
select_index    2000000 5       0       29942.10
Далее я привожу вырезки из его perf-тестов по шагам, так сказать:)
(1 = super-smack -d mysql select-key.smack 100 10000
2 = super-smack -d mysql select-key.smack 10 100000),
последняя строка статистики расшифровывается как: Query_type      num_queries     max_time        min_time        q_per_s)

Поехали.

== 4BSD + libpthread + ACPI-Fast ==
====================================
 1: connect: max=46ms  min=6ms avg= 25ms from 100 clients
 select_index    2000000 8       0       18624.60

 2: connect: max=5ms  min=0ms avg= 1ms from 10 clients
 select_index    2000000 0       0       23983.87
====================================


== 4BSD + libthr + ACPI-Fast  ==
====================================
 1: connect: max=107ms  min=2ms avg= 45ms from 100 clients
 select_index    2000000 13      0       22413.39

 2: connect: max=2ms  min=1ms avg= 1ms from 10 clients
 select_index    2000000 0       0       26841.07
====================================


== 4BSD + libthr + TSC ==
====================================
 1: connect: max=46ms  min=1ms avg= 21ms from 100 clients
 select_index    2000000 11      0       23428.03

 2: connect: max=2ms  min=0ms avg= 1ms from 10 clients
 select_index    2000000 0       0       26403.95
====================================


== ULE + libthr + TSC ==
====================================
 1: connect: max=41ms  min=0ms avg= 23ms from 100 clients
 select_index    2000000 5       0       28581.18

 2: connect: max=4ms  min=0ms avg= 1ms from 10 clients
 select_index    2000000 0       0       30128.44
====================================


== ULE + libthr + TSC + context_time.patch + cpu_acct_1.patch + cpu_acct_2.patch ==
====================================
 1: connect: max=27ms  min=0ms avg= 14ms from 100 clients
 select_index    2000000 5       0       29942.10

 2: connect: max=12ms  min=0ms avg= 4ms from 10 clients
 select_index    2000000 0       0       31057.52
====================================


== 4BSD + libthr + TSC + context_time.patch + cpu_acct_1.patch + cpu_acct_2.patch ==
====================================
 1: connect: max=54ms  min=20ms avg= 38ms from 100 clients
 select_index    2000000 9       0       24144.22

 2: connect: max=2ms  min=0ms avg= 1ms from 10 clients
 select_index    2000000 0       0       27073.46
====================================

Machine:
Dual 244, 2Gb running FreeBSD 6.1-PRERELEASE (i386)
Package install of mysql 4.0
Port install of super-smack

Dyr
Power member
Сообщения: 43
Зарегистрирован: 14 сен 2005, 10:54
Откуда: Санкт-Петербург
Контактная информация:

Сообщение Dyr » 07 апр 2006, 12:33

Dual 244, 2Gb running FreeBSD 6.1-PRERELEASE (i386)
Package install of mysql 4.0
Port install of super-smack
Я что-то не понял, а что, теперь модно ставить на 64-битные процы x86 дистрибутивы? А какой глубокий смысл ставить бенчмарк из портов, но mysql (да ещё и 4.0) из паккаджей?

Аватара пользователя
umanski
member
Сообщения: 25
Зарегистрирован: 12 авг 2005, 14:48

Сообщение umanski » 07 апр 2006, 12:40

AFAIK it's not recommended...  :shock:  Хотя работать может, если с либами не будет проблем...

smb-
Junior member
Сообщения: 19
Зарегистрирован: 12 янв 2006, 20:20

Сообщение smb- » 07 апр 2006, 20:29

umanski писал(а):AFAIK it's not recommended...  :shock: 
Что именно, пардон?..
Просто 40-50% perf на дороге не валяются :)  
Хотя работать может, если с либами не будет проблем...
Сменить библиотеку потоков вроде не самая большая проблема....
Я что-то не понял, а что, теперь модно ставить на 64-битные процы x86 дистрибутивы? А какой глубокий смысл ставить бенчмарк из портов, но mysql (да ещё и 4.0) из паккаджей?
Насчет х86/х64 - хз, мб коммитер считает первое надежнее(ему виднее все баги слегка ;) ), а насчет способа установки - имхо, на результаты не влияет, к тому же под библиотеку потоков другую он наверное сам собирал ;)

Autopilot
Junior member
Сообщения: 7
Зарегистрирован: 24 апр 2006, 13:09
Откуда: Нижний Новгород

Сообщение Autopilot » 26 апр 2006, 12:54

Сейчас занимаюсь пляской с бубном вокруг старенького сервера
2xXeon 550 + 440BX + 2G + PromisseTX2300 + 2xSATAII160G + 2xSCSI 9G (не участвуют)
FreeBSD 6.1 RC1 (сделан buildworld)
Цель - apache + php(xsl+xml) + mysql + mail + ftp для переноса проекта с посещением 25000 в сутки. Время пока есть и хочется выжать из сервака по максимуму.
Так что хотел бы повторить опыты
http://blog.gslin.org/archives/2005/12/12/252/
http://lists.freebsd.org/pipermail/free ... 01874.html
и, возможно, выйти в итоге на связку
ULE + libthr + TSC + context_time.patch + cpu_acct_1.patch + cpu_acct_2.patch

Но возникли непонятки
1. Не нашел пока инфы как и куда применять патчи.
2. Кто знает как мог переключать библиотеки потоков автор опытов? libmap.conf, но как? нужно ли давать команду после изменения libmap.conf и какую.  
3. Кто знает как собрать mysql так как собирал автор опытов? make.conf или что то еще? что вписать в make.conf.

Железо только не ругайте - проект то студенческий )))
== дополнено ==
1. ldconfig -r | grep thr
53:-lpthread.2 => /usr/lib/libpthread.so.2    
56:-lthr.2 => /usr/lib/libthr.so.2            
57:-lthread_db.2 => /usr/lib/libthread_db.so.2
не хватает linuxthread?

Dyr
Power member
Сообщения: 43
Зарегистрирован: 14 сен 2005, 10:54
Откуда: Санкт-Петербург
Контактная информация:

Сообщение Dyr » 27 апр 2006, 07:36

Autopilot писал(а):Сейчас занимаюсь пляской с бубном вокруг старенького сервера
2xXeon 550 + 440BX + 2G + PromisseTX2300 + 2xSATAII160G + 2xSCSI 9G (не участвуют)
Мне б такой "старенький"  :D  С чипсетом ошиблись, 440BX, AFAIK, не поддерживает SMP и Xeon'ы.

Но возникли непонятки
1. Не нашел пока инфы как и куда применять патчи.
Там, вроде, всё написано.

2. Кто знает как мог переключать библиотеки потоков автор опытов? libmap.conf, но как? нужно ли давать команду после изменения libmap.conf и какую.  
Рестартовать MySQL.

3. Кто знает как собрать mysql так как собирал автор опытов? make.conf или что то еще? что вписать в make.conf.
cd /usr/ports/databases/mysql50-server/ && make -DBUILD_OPTIMIZED=YES WITH_LINUX_THREADS=YES install
Железо только не ругайте - проект то студенческий )))
Парень, да большинство на такие сервера только облизываться могут  :wink:
Хотя конкретно на этом форуме у большинства всё хорошо.  :D


== дополнено ==
1. ldconfig -r | grep thr
53:-lpthread.2 => /usr/lib/libpthread.so.2    
56:-lthr.2 => /usr/lib/libthr.so.2            
57:-lthread_db.2 => /usr/lib/libthread_db.so.2
не хватает linuxthread?
Смотри выше.

Ответить

Вернуться в «Серверы - ПО, Unix подобные системы»