Показать сообщение отдельно
Старый 29.01.2008, 11:13   #19  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5803 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от vesna dba Посмотреть сообщение
А вот скажите - возможно ли обойтись более мощным сервером с большим объемом ОЗУ и не покупать второй АОС.
Возможно, если использовать 4-ку, но вам, похоже, это не грозит
Цитата:
Сообщение от vesna dba Посмотреть сообщение
Почему завязка на количество пользователей?
Была такая тема, что, мол, AOS в 3-ке не может эффективно использовать больше двух процессоров. Связано это, по моим предположениям, с тем, что в ядре 3-ки со сборки 3.0.1951.8 и по 3.0.1951.7609 для работы с динамически выделяемой памятью используется одна и та же версия библиотеки SmartHeap 6.01 для многопоточных программ, в которой "заточка" сделана лишь под одноядерные и HT-процессоры. Соотв., на более чем двух процессорах при работе с динамической памятью отдельные потоки 3-го AOS'а, соответствующие отдельным пользовательским сессиям, начинают блокировать друг друга, что сказывается на масштабируемости. Видимо, исходя из усредненной мощности серверных процессоров и нагрузки на AOS и получается рекомендуемое количество одновременно работающих на одном AOS'е пользователей. Выходов тут мнэ... три
  • покупать под AOS сервер с более шустрыми процессорами, памятью и дисками (а также "наворачивать" сервер БД);
  • запускать большее количество AOS'ов, в т.ч. на одном физическом сервере, если на нем больше двух процессоров; только не надо слушать советы всяких индусов и пытаться выставлять процессам AOS'ов affinity (привязку к отдельным CPU) - виндовый time slicer и так прекрасно раскидает их потоки по свободным процессорам;
  • переходить на 4-ку
последнее связано с тем, что в 4-ке уже используется SmartHeap/SMP 8.0 (т.е. более новая версия, к тому же заточенная под многопроцессорные системы), что вместе с рядом архитектурных изменений делает AOS 4-ки гораздо более масштабируемым. Сравните стоимость 1-го и 2-го вариантов, возможно, все же купить лицензию на еще один AOS будет дешевле.
PS. К слову, когда различные потоки AOS блокируют друг друга, по загрузке процессоров вы этого можете и не увидеть: поскольку в AOS используются виндовые объекты синхронизации, заблокированные потоки переводятся ядром винды в состояние ожидания, и кванты процессорного времени им не выделяются. Если при этом блокирующие потоки сами будут чего-то ожидать, а не "грузить процессор", то получится, что с одной стороны, процессоры не загружены, а с другой - наблюдаются тормоза...

Последний раз редактировалось gl00mie; 29.01.2008 в 14:48. Причина: «SmartHeap/MP» -> «SmartHeap/SMP»
За это сообщение автора поблагодарили: belugin (3).