"Use Windows NT fibers" в MSSQL2k

Вопросы программирования БД, их оптимизации, резервирования и восстановления данных.

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

Ответить
KirT
Junior member
Сообщения: 2
Зарегистрирован: 12 фев 2003, 14:15

"Use Windows NT fibers" в MSSQL2k

Сообщение KirT » 12 фев 2003, 14:37

Имеется 4-х процессорный сервер, на котором стоит Windows 2000. На нем крутится MSSQL Server 2000. Машина предназначена только для него.
Вопрос: какие настройки для MSSQL лучше выставить?

А если более конкретно, то самое смутное для меня в этих настройках - галочка, вынесенная в тему форума.

Нужно ли выставлять использование NT fibers для SQL-сервера? На данный момент на сервере около 300 коннектов. Как повлияет эта настройка на скорость и стабильность работы?
Спасибо.


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

Re: "Use Windows NT fibers" в MSSQL2k

Сообщение a_shats » 12 фев 2003, 18:19

KirT писал(а):Имеется 4-х процессорный сервер, на котором стоит Windows 2000. На нем крутится MSSQL Server 2000. Машина предназначена только для него.
Вопрос: какие настройки для MSSQL лучше выставить?
1. Насчет настройки:берете несколько наиболее типичных для Вашей конкретной задачи запросов (ну или последовательностей действий клиента), выясняете (RTFM, см. ссылку ВТБ! - и не только, в хелпе к MSSQL все описано очень детально) точное значение каждого параметра настройки, дальше - от типового набора параметров запускаете тестовых "клиентов" в кол-ве, близком к будущему реальному, записали время выполнения и текущую конфигурацию, остановили, сменили значение к.-л. параметра (по одному ! и с обязательным сохранением предыдущей конфигурации), повторили выполнение запросов и т.д. - пока не найдете наилучшую настройку. Это - самый простой и довольно-таки эффективный метод настройки SQL-сервера (повторюсь: при каждом изменении конфигурации Вы должны точно знать, что именно Вы в данный момент делаете и чего в результате хотите добиться).
2. Ну, насчет включения fibers: в дополнение к RTFM, на задаче 1С было снижение нагрузки на процессоры + снижение производительности в целом, однако - улучшение реакции (снижение времени отклика) при увеличении кол-ва клиентов.

KirT
Junior member
Сообщения: 2
Зарегистрирован: 12 фев 2003, 14:15

Сообщение KirT » 13 фев 2003, 12:58

Спасибо за ссылки и советы.
По поводу настройки на типичных запросах: мне трудно определить, какие запросы типичны, т.к. система довольно сложная и разрабатывалась другой организацией. Может имеет смысл тестировать производительность на запросах, снятых профайлером в процессе реальной работы?

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

Сообщение a_shats » 13 фев 2003, 14:18

Если есть опыт работы с профайлером - то нужно не только отстраивать конфигурацию, но и - ловить проблемы в структуре (производительность наиболее часто выполняющихся запросов, и, соответственно, оптимизация их - поверьте, даже в самой сложной системе этих н.ч.п. запросов не более десятка-двух).
Если нет - то не заморачиваться запросами, а: к софтине есть инструкция - наверняка. У клиента есть некие последовательности действий (их тоже немного, как правило- ввод документа(подгрузка справочников, вставка записи), выполнение отчетов (далеко не все отчеты выполняются постоянно - проконсультируйтесь с теми, кто будет непосредственно работать, что им конкретно чаще всего нужно), административно-технические задачи (раздача прав, онлайновая репликация - если есть)- это и в одном экземпляре можно, но - на фоне нагрузки от "работающих" клиентов). Вот эти-то простейшие клиентские задачи, выполняемые в соответствии с инструкцией, и запускайте. Если есть возможность сделать это скриптом - вообще было бы идеально.
И еще: "идеальная" последовательность настроек примерно такова:
1. Отстраиваете "стартовую" конфигурацию сервера(тесты и подстройки в течение примерно недели), как описал выше, если есть возможность - на этом этапе выявляются наиболее видимые/грубые грабли(как с железом. так и с софтом).
2. "тестовый пуск" - в пределах месяца (т.е. люди уже работают, но Вы за всем этим оччень внимательно наблюдаете). Собираете при этом всю доступную информацию о нагрузках и их распределении (в т.ч. профайлером и перфмоном), в конце каждой недели - анализируете полученную статистику и производите более точную настройку - как SQL, так и всего остального.
3. В конце месяца - подбиваете статистику, окончательно выявляете узкие места и закрываете их - с запасом (зависит от темпов роста нагрузки в течение тестового месяца). Причем - как софтом, так и - железом.
4. Запускаем - работает ? Если да, то все ок.
Вот, собственно...

Ответить

Вернуться в «Серверы - ПО, Базы Данных и их использование»