Здравствуйте. Очень часто стал сталкиваться со следующей проблемой:
По утрам не запускаются клиенты, точнее очень долго (около 30-40 минут).
При том не имеет значение клиент установлен на ПК пользователя или напрямую с сервера.
Глядя на монитор ресурсов и диспетчер задач оперативная память загружена от 20% до 50% (50% это видимо когда сервер наберет Кэш и пока не перезагрузишь не сбрасываетя).
Процессор так вообще забит менее 10%.
После захода первого клиента, далее все остальные просто залетают в 1С за секунды и на протяжении дня всё ОК. Пока у кого то запущен хоть один.
При том конфигурация не имеет значения (крутится 2 базы), размер так же не влияет: 1- 1500 ГБ; 2- 16 000. Но не важно в какую бвзу заходить первой
Параметры ПК:
Xeon E 2562
DDR 48ГБ
SSD Samsung Evo 850
Сеть 1 Гбит.
ОС WIndows Server 2016 standart.
Настраивал SQL по инструкции, которая размещена на Инфостарте.
Так же хочу заметить, что Оперативная память не загружается больше 50%, более 20 ГБ остается свободным. и процессор так же, менее 10%.
Под Кэш 2 диска в RAID 0, свободно более 500 ГБ,
Читал, что лечится добавлением процессов в консоль, но что то настроек я не нашел.
Подскажите пожалуйста добрым советом, кто что делал в данном случае, как вылечить мою беду:(((
(4) затрудняюсь сходу сказать как ведет себя система когда все по нулям. Поставьте как у меня - проверите. Хуже точно не будет. А если будет, вернете нули назад.
(3)Я же пишу, что вне зависимости от конфигурации. Если запущен у кого то хоть один клиент, то все остальные залетают в программу в считанные секунды и так же вне зависимости от конфигурации, неважно в какую из баз первый зашел. Те же проблемы и с конфигуратором.
Такое ощущение, что кластер при простое просто отключается и сбрасывает кэш.
Так же проблема остается при загрузке обновлений. В последний раз потратил на Бухгалтерию 3.0 всю ночь. 1С просто зависала и всё. Естественно я ее не трогал...то 1 час грузил конфигуратор, 30 минут грузил после ввода данных авторизации, дальше после поиска обновлений обновлял 4 часа, затем в клиентском режиме час обновлял.
(5) я вижу что вы пишите, но обычно в конфе говнокод который что-нибудь выгружает в огромном количестве раз в день.
но ваш случай больше похож на то что вы кеш чистите пользовательский и серверный, а там находится конфигурация, которой нужно обновиться при первом входе
(14)в эту сторону тоже думаю, но как сделать так, что бы кеш не очищался. Но есть ещё одно замечание: оперативная память при этом не уменьшается.
На данный момент перезагрузил сервер и монитор показывает занято 8 ГБ оперативной памяти. При том 10 пользователей прекрасно себя чувствуют. Но постепенно оперативная память разрастается до 17-20 ГБ и не уменьшается.
Ещё есть замечание, что после того как все выйдут вечером и зайти в конфигуратор ( который грузится очень долго) и снять копию, то на утро опять не зайти.
Такое ощущение, что при загрузке конфигураьора КЭШ предприятия очищается и заполняется конфигуратором. Зато потом в конфигуратор зайти можно быстро, а вот в предприятие нет.
Затем наоборот, после работы предприятие долго заходит конфигуратор.
Но вот при одновременной работе предприятие и конфигуратор все ОК. До тех пор пока не выйдут все пользователи.
Но даже, если не заходить сегодня в конфигуратор и выйдут все пользователи, то завтра клиенты загрузятся нормально.
Вроде все проблемные места изложил, которые вспомнил и видел.
(25) нет сервер на ночь не выключается. Работает сутками.
нет сервер на ночь не выключается. Работает сутками.
Т.е. если сейчас выгнать всех юзеров то через 5-10 минут первый будет заходить 30-40 минут?
А если оставить одного юзера "с ночевкой", что будет утром?
(31)Это мое предположение. Выгрузку базы к примеру делаю. Я автоматическому бекапу не доверяю, поэтому делаю раз в 2-3 дня ручной бекап вместе с атоматическим.
В этот раз на утро зависла из за обновлений, т.к. вчера делал обновление через конфигуратор.
А так же во время работы конфигуратора возрастает расход оперативной памяти и после не спадает до того момента, пока не перезагрузишь сервер.
Еще вопрос:
tempdb и templog нету в папке с базой. Где он по умолчанию находится?
(33)да, в SQL manager есть. Находится в стандартной папке.
Единственное, зашёл в свойства файла. В параметрах написано занято 65 МБ, доступное место 45.
Хотя в файловых настройках написано рост по 10% без ограничения.
Это нормально?
Может его тоже нужно настраивать? Подскажите:(
(34)нет, не настроено освобождение памяти. Подскажите пожалуйста, где это делается и нужно ли это? Но память sql не всю сжирает, а только половину общей.
(35)реорганизация делается стандартным методом, редко один -два раза в месяц.
Вообщем ради эксперимента. Закончился рабочий день и решил зайти в программу.
Пользователей нет, программа крутит уже 10 минут.
Так, что не в конфигураторе дело, а именно в первом вошедшем и последним вышедшим с программы.
(32) такой вопрос.
Залез еще раз в статью по которой делали настройку MS SQL Server. Там регламентные операции настраиваются реорганизация индексов и обновление статистик. Как часто делаются реорганизация индексов?
ще раз, исходя из чего вы выставили такие параметры? Что бы самому понять на что влияют данные настройки?
Да может вообще причина не в этом понаблюдайте за ростом tempdb при первом запуске.
Как вариант засунуть tempdb на RAM диск. Эта база создается каждый раз при старте службы sql server так что ее потеря ничем не грозит.
Я такую ситуацию вижу часто у тех у кого на "сервере" используется 1 диск и на нем висит и ОС и все по. Помониторьте через монитор ресурсов нагрузку на диски.
(20) погодите, создайте пустую или почти пустую БД. Утром проверите как долго будет заходить в нее. Если быстро - значит дело в базе. Если так же 30-40 минут, в пустую базу, то дело не в базе.
PS. Сделайте копию БД прямо сейчас и проверьте сколько будет длиться первое подключение к ней.
По утрам не запускаются клиенты, точнее очень долго (около 30-40 минут).
Если в пустую 2-3 минуты, а боевую - 30-40.... то таки дело в базе....
А если сначала зайти в пустую, и соответственно через 2-3 минуты, или через 4, чтобы точно, зайти в боевую?
(23)бухгалтерия 3.0 я перенес на SQL неделю назад.
При том после переноса делал тестирование, подсчет итогов, реструктизацию. Все Ок.
Тем более если первой запускать бухгалтерию и она становится первой, которая тормозит и долго грущится, то после ее загрузки, другая отраслевая конфигурация залетает моментом.
Если делать наоборот, то отрослевая долго думает, но после загрузки та же бухгалтерия открывается за считанные секунды.
(24) а до какого времени продолжается это поведение? Если например, в середине дня всем выйти из баз, а потом снова заходить - долго будет или нет?
Можно попробовать перезапустить службу сервера 1с - проверить как будет заходить, если быстро, значит проблема не в нём.
Попробовать перезапустить службу sql сервера, если снова зайдет быстро, видимо и не в нём тогда проблема...
(18)Посмотрите настройки гипервизора, может он для вашей виртуальной машины память динамически выделяет по мере потребности, отсюда могут быть тормоза, пока он там разрулит между VM ресурсы что бы дать вашей машине память и ресурсы процессоров, время может большое пройти.
(38)Как вариант выставить sql минимальный порог памяти половину от необходимого объема, и тогда при перезагрузке сервера он сразу же возьмет себе необходимый объем. Так же посмотрите какие еще сервисы забирают память и процессоры по мимо sql и 1C. Частые проблемы с службой обновлений, особенно при загрузке сервера, она частенько подвисает, подбирая под себя процессоры и память.
(40)Самому серверу SQL, у него есть минимальный и максимальный объем память которую он использует. Если по мимо 1С и SQL есть другие сервисы, то SQL серверу сложно выделять новые порции памяти, из за архитектуры самого сервера, по этому он начинает скидывать на диск. Если соединение к серверу прописано по днс имени, то бывают проблемы что клиент не может найти сервер, из за проблем с ДНС. Так же если настроена доменная авторизация, проверьте клиенты видят контроллер домена или нет, есть в журналах событий подобный ошибки.
(42)
проверьте дисковую систему и сетевой канал, скопируйте по сети большой файл и обратно, желательно между серверами, по теории скорость должна быть в среднем 70-100Мб\с, важно копировать по сети а не локально. проверить все массивы которые используются 1С и sql. Была давненько такая проблема, замена SSD помогла
(43)я же объясняют, что я сейчас работаю локально на самом сервере.
1с: сервер и MS SQL на одном сервере.
1С запускается тоже на самом сервере.
Вообшем ребят, ситуация следующая.
1. Изменение начального размера tempbd до 8000 ГБ дал небольшой рост, дальше ставить страшно. Т.к почему то мин стоял на 50.
Объяснить никто не смог зависимость данной базы tempbd (я про размер).
2. Запустил первую базу и решил проверить ещё раз свою теорию с запуском первого клиента.
3. После загрузки первой базы решил запустить вторую базу (притом первая в 15 раз меньше второй базы)
4. Вы не поверите!вторая база запкстилась за 15 секунд! 10 из них вводил данные авторизации.
Так что не могу даже сказать из за чего это и почему данный фактор влияет на работу сервера SQL и 1С.
Может все таки кто то что то думает по этому поводу?
После загрузки обоих баз нагрузка на диски, где установлен SQL (в том числе база tempbd) и весь софт близка к нулю.
SSD, где расположены сами базы, активность почти не принимала не во время загрузки баз, не сейчас.
Какой то параметр отвечает за это?
Единственное понял, что во время запуска очень сильно нагружен диск, до 100%. Но скорость диска по тесту crystal неплохая. Не SSD, но все же.
[IS-QUOTE]Так что не могу даже сказать из за чего это и почему данный фактор влияет на работу сервера SQL и 1С.
Где висит физически сервер 1С, на SSD?
[/IS-QUOTE]
Важно не какой процент а какая скорость обмена с диском.
Объяснить никто не смог зависимость данной базы tempbd (я про размер).
Размер базы зависит от интенсивности использования временных таблиц сервером, чем быстрее доступ к этой базе тем выше производительность при обработке запросов с временными таблицами. При загрузке клиента tempdb практически не используется. Желательно эту базу сжимать по чаще для исключения фрагментации данных.
(46)нет, сам 1с: сервер находится не на SSD, а на двух SAS дисках в RAID 0.
Скорость при загрузке первого клиента 7-8 МБ.
Но самое интересное, что после запуска первого клиента нагрузки вообще ни на что нет, в том числе и на диски. 12 клиентов работают , входят и выходят на протяжении всего рабочего дня безо всяких проблем и глюков. Загрузка клиента происходит моментально.
Самый важный это первый запуск клиента, вот в нем и кроется вся беда. Что именно и куда он загружает, что даёт стабильность на протяжении работы всех остальных и что и откуда удаляется после выхода из системы последнего клиента?
Так tempbd вернуть к стандартным настройкам? Я уже запутался с этим tempbd....:(((
(47) Не понял у вас на одном контроллере и SAS и SATA, а у вас контроллер поддерживает такой режим работы?
Судя по симптомам ваш массив на RAID 0 не работает как положено, верните все на SSD и проверьте в нормальном режиме работу.
(48)как бы интерфейс SAS сам по себе поддерживает SATA, а вот наоборот нет.
Такого не может быть, что контроллер который работает с SAS не видит диски SATA. Попробуйте на работе вставить в свободный слот SATA диск.
И запустить его либо в jbod, либо в raid 0, даже, если нет второго диска.
SSD установлен специально под базы. На нем, кроме баз ничего нет.
Пишут, что если tempbd перенести на SSD, то он быстро придёт в негодность..
Скорость работы всех дисков замерялачь на прошлой неделе.
Все норм. RAID max скорость чтения 160, SSD 540.
Сам сервер ещё не загажен, т.к переустанавливалась OS на windows server 2016.
(49)Тут дело не в интерфейсах а особенностях контроллера, на некоторых контроллера специально делают либо SAS либо SATA, у меня на серверах когда миксуешь скорость режет либо сас массив либо SATA массив, хотя если проверять по отдельности в ок.
Пишут, что если tempbd перенести на SSD, то он быстро придёт в негодность..
Все правильно износ будет быстрее.
Все норм. RAID max скорость чтения 160, SSD 540.
Лучше проверить банальным копированием больших файлов, в вашем вариант между двумя массивами туда и обратно.
На сервере частота у процессоров не плавает, может режим экономии стоит.
(52)между массивами копируется очень быстро. иногда сбрксывал данные с ssd на RAID.
пл самой работе 1С: Как пример , формирование отчёта за 3 года по всем карточкам контрагента (по всему справочнику) менее 45 секунд. Формирование сальдо по 62 счёту, так же по всем контрагентами составляет около 30 секунд.
Бухи просто в восторге!
Фирма большая, документов проводится очень много.
(54)База до переноса была почти 60 ГБ. Сейчас около 17 ГБ.
(55)Раз дисковая система в порядке, то нужно смотреть в сторону энергосбережения, походу сервер без нагрузки включает этот режим, а выходит из него плохо, все драйвера материнской платы установили, может встали какие то самой винды которые не очень совместимы с оборудованием.
(49) с размером tempdb конечно переборщили :D Если у Вас размеры баз не перевалили за 100Гб а то и выше то не стоит tempdb делать таким большим. Поставьте например 1024 мб и шаг роста 512 Мб, если базы совсем небольшие то и того меньше.
Проверьте кстати режим электропитания и энергосбережения, выставляйте на высокую производительность и в биосе вырубайте энергосбережение, если там есть такая настройка.
Как вариант попробуйте переместить эту базу на ssd..временно что бы понять в ней вообще проблема или нет. http://its.1c.ru/db/metod8dev/content/2377/hdoc
Пишут, что если tempbd перенести на SSD, то он быстро придёт в негодность..
Это было давно и неправда, нормальный серверный ssd вы задолбаетесь ушатывать, положите tempdb туда же
Где лежат данные кластера серверов (папочка srvinfo по умолчанию кладется в Program Files, что ооочень плохо)?
Их тоже на ssd по возможности
При первом заходе пользователя конфигурация базы считывается процессом rphost, следующим пользователям, которые подключатся к этому же rphost считывать конфигурацию не надо, поэтому они и подключаются быстрее. То что у вас идет очень медленный запуск первого сеанса говорит о том, что конфигурация считывается очень долго. Либо она очень большая либо общение с диском с данными кластера очень медленное, что скорее. Медлительность диска может быть от того что это просто медленный диск :), от того что это системный диск, от антивируса, от загрузки со стороны других программ
(70) про tempdb от производителя (в примере перенос tempdb) про srvinfo - зачем переустанавливать? останавливаете сервис, по пути к папке srvinfo ищете запись старта сервиса в реестве windows, меняете путь к папке в строке запуска, запускаете сервис. Все.
Папку естественно скопировать не забыть :)
Максимальное количество потоков (Maximum worker threads) ставим 2048, по умолчанию стоит 0 и с таким значением сервер не создает больше 255 потоков, а этого ему не хватает (установлено опытным путем, что при большом количестве одновременных транзакций сервер реально начинает быстрее работать). Также выставляем галку повышенного приоритета сервера (Boost priority).
Если у вас Сервер БД и сервер 1с на одной машине - эта настройка не нужна.
И я бы смотрел в сторону temdb. Возможно в вашем случае он является узким местом. Как вариант не хватает производительности диска или время отклика продолжительное. Попробуйте поменять шаг роста этой базы.
Скорее всего время отклика, но как это влияет на других пользователей, ведь после первого захода все становится Ok.
Значит кластер где то кеширует данные, а потом сбрасывает.
Скорее всего время отклика, но как это влияет на других пользователей, ведь после первого
Напрямую влияет. При первом запуске идет заполнение tempdb.
Еще убедитесь что в свойствах каталогов где хранятся базы и системные и рабочие не стоит сжатие (маловероятно, но проверьте).
К слову tempdb размещенный на ssd его достаточно быстро "ушатает".
А после чего/когда началось?
Есть похожая проблема с первым клиентом на сервере 2012 R2
Появилась после обновления Винды и 1С (было практически одновременно - так что точно определить из за какого конкретно сложно)
Откат обновления винды и платформы уже не помогает - копать пытались - похоже на то что защитник винды блочит 1С при старте и они возможно отношения выяснять начинают.
К сожалению в новом винсервере это даже отключить нельзя - после перезагрузки дефендор снова на своем месте и работает.
Попробуйте до первого запуска принудительно отключить Defender.
(56) началось после перестановки windows.
Был 2008 r2, но он менее производителей, чем 2016 и уперлись в ограничения памяти.
Если 1с загружается, то производительность по сравнению с 2008 небо и земля.
Только вот, что ещё заметил: в 2008 кушал полностью 32 ГБ оперативной памяти, а 2016 от 8 ГБ до 20 ГБ и не больше, а производительность выше. Иногда даже больше 8 ГБ не поднимается.
Как же он блочит, если файловый режим свободно запускается?
Я думаю не в этом дело.
Тут дело не только в первом клиенте, но и в последнем.
Только вот, что ещё заметил: в 2008 кушал полностью 32 ГБ оперативной памяти, а 2016 от 8 ГБ до 20 ГБ и не больше, а производительность выше. Иногда даже больше 8 ГБ не поднимается.
Это может говорить о том что сервер активно использует дисковый кэш. Производительность выше еще за счет того что этот кэш размещается на RAID0 и SSD.
Только вот, что ещё заметил: в 2008 кушал полностью 32 ГБ оперативной памяти, а 2016 от 8 ГБ до 20 ГБ и не больше, а производительность выше.
Кто память кушает? 1С? А версия платформы 1С при этом не поменялась? Что-то мне подсказывает что дело не в 2008/2016, а в релизе 1С.
Не помню с какого релиза типа 8.3.4.ххх перешли на 8.3.6.хххх (точные релизы не помню) прожорливость сервера 1С упала с 40-50Гб до 12-20Гб )))
При том же числе юзеров, и производительность немного подросла. Если у вас было всего 32 Гига, то 1С их просто выжирала и тупила, сменили платформу - прирост производительности )))
подскажите пожалуйста, все таки из расчёта чего именно Вы исходили изменяя параметры в свойствах кластера и в свойствах рабочего сервера?
Дело в том что при заявленной многопоточности 1С реально не может работать более чем с 4 ядрами, а у нас 24 ядра на сервере. В результате нагрузка 20% (16% от 1С и 5% система) а 1С жутко тормозит.
Экспериментально было определено 16 юзеров на процесс, определялось именно экспериментально ставили 32, 24, 16, 8 (ну люблю я круглые числа), максимальная производительность и минимальная нагрузка оказалась при 16.
Влияние числа баз на процесс обнаружено не было. Три осталось просто )))
С кластером тоже экспериментально. Долго работающие процессы отжирают память, т.е. разрастаются и не освобождают память и, иногда, подвисают, по этому имеет смысл их "обновлять". 4 часа (14400 секунд), половина рабочего дня, определено методом тыка, не сильно грузит сервер, и практически не имеем глюков.
То что принудительно завершать проблемные - тут без вопросов, работаем круглосуточно и пусть лучше сеанс пользователя "умрет" и пользователь через 5-10 минут работает снова, чем что-то подвиснет.
Приоритет по производительности - памяти дофига. И 3,5Гига на процесс тоже было определено методом тыка, отжирает минимум памяти и не сказывается на производительности.
(60) нет, платформа и конфигурации были те же. Я же перестановку делал неделю назад.
Так же заметил, что sql в tmpbd после выхода всех клиентов сбрасывает все данные и размер становится минимальным. При запуске первого клиента разрастается до 563 МБ и дальше на протяжении дня не растёт.
Точно такая же проблема.
переустановили винду. поставили ту же версию 1с и потгре
долгий запуск первого экземпляра базы. все кто входит после - работает быстро. главное, чтобы был хоть один активный сеанс. но такая проблема не на всех конфах. на сервере есть много БГУ и одна ДО. ДО ведет себя нормально. БГУ как описано выше.
За 4 дня никто не предложил собрать технологический журнал?
Тогда я предложу. Соберите полный технологический журнал, и выкладывайте сюда.
По шагам:
1. Остановите службу агента сервера 1С и убедитесь, что не зависли процессы rphost.exe, rmngr.exe, ragent.exe
2. Приложенный файл сохраните в папку C:\Program Files\1cv8\conf\
3. Запустите службу агента сервера 1С
4. Выполните вход в информационную базу
5. Удалите или переименуйте файл C:\Program Files\1cv8\conf\logcfg.xml
6. Содержимое папки D:\TechLogs\ALL архивируйте и выкладывайте сюда
upd1
Сервер 1С 32 или 64 бит?
Для 32 битной версии сервера 1С Program Files замените на Program Files (x86)