Последнее время пришлось немного поработать с 1С и решить несколько проблем. Все они были связаны с медленной работой файловых баз 1С. Поделюсь своими советами на тему того, как их немного ускорить.
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Введение
Раз вы добрались до этой статьи, думаю, вам не надо рассказывать о том, что такой файловая база 1С. Отмечу только, что она очень актуальна для малого и для некоторого среднего бизнеса. С помощью файловой базы можно за очень скромный бюджет начать работу с 1С. Вам надо будет купить лицензию на саму конфигурацию 1С и несколько софтовых лицензий на рабочие места.
А если вы выходите за возможности работы в файловых базах, дальше вам нужно будет платить в разы больше. Там нужна будет и лицензия на сам сервер 1С, на серверную ОС, на лицензию MSSQL, если выберите ее и т.д. В общем, там совсем другие бюджеты. Не хочу в данной статье останавливаться на разборе цен, так как они постоянно меняются. И будут сильно отличаться в зависимости от выбранной схемы работы.
В любом случае, переход от файловой базы к полноценному северу 1С сопряжен с существенными финансовыми затратами. Когда вы находитесь в пограничной ситуации, когда вроде бы и файловая база еще тянет, но работать трудно стало из-за тормозов, но переходить на клиент-серверную схему вы не имеете финансовой возможности. Тут как раз можно немного поработать с файловыми базами, чтобы ускорить их работу.
Использование SSD диска
Когда задумал написать статью, про ssd в голове не было мыслей. Подумал, что это первое, что должен попробовать человек, который захочет ускорить работу чего угодно на компьютере, в том числе и файловой базы на 1С. Но когда написал статью, понял, что без этого упоминания она какой-то неполноценной получилась.
Первое, с чего начинаем ускорение файловой базы - переносим ее на SSD. На обычных дисках с ней сейчас вообще невозможно работать даже одному. Пи этом имейте ввиду, что если с базами интенсивно работают, ресурс бюджетных ssd дисков будет очень быстро расходоваться. Я хоть и давненько уже, но помню, как в одном месте менял эти диски каждые полгода, год. Так что обязательно бэкапы и по возможности raid1 или raid10.
Отмечу, что у меня все диски выходили из строя примерно одинаково. Они просто не давали ничего писать на них, так что данные по факту не терялись. Просто устанавливался новый диск, файлы копировались и продолжалась работа.
Я рекомендую тут не экономить и купить не десктопный диск, а что-то подороже, с большим ресурсом. Но если денег нет, то можно и обычный. Просто не забывайте каждую ночь бэкапить базы. Малый бизнес переживет если что, от потери данных за день. Можно и руками перезабить, если хочется сэкономить. Такая плата выйдет.
Настройка регламентных заданий
Дальше ускорять файловую базу я бы продолжил настройкой регламентных заданий. Если вы никогда этого не делали, то сразу же отправляйтесь туда. По умолчанию там есть куча заданий, которые вам не нужны или не очень нужны. Например, обновление новостей или отправка статистики использования в 1С.
Это то, что точно не нужно. Так же возможно вам не нужно построение и обновление полнотекстового индекса. Это задание по дефолту стартует каждые 60!!!! секунд и катастрофически снижает работу файловой базы. Более того, я видел глюки перестроения индекса, когда в директории с файловой базой 1С в папке 1Cv8FTxt копились десятки тысяч мелких файлов.
Я не знаю, с чем связана эта ошибка, так как сам ее не решал. Замечал уже на бэкап сервере, куда неожиданно начали литься сотни тысяч файлов с файловых баз. Передал информацию ответственным людям, оказалось, что там и сами базы стали жутко тормозить примерно в то же время, когда появились эти файлы. Судя по всему, после перестроения индекс почему-то не собрался обратно. И это очень сильно затормозило работу. Достаточно было эти файлы просто удалить, чтобы опять все нормально заработало.
Если вам не нужен этот индекс, а для небольших баз он реально не нужен, отключите его или перестраивайте хотя бы раз в час, но не каждую минуту. Этот совет актуален не только для файловых баз. Прицепом к этому заданию идет Извлечение текста файлов для поиска. Оно тоже запускается очень часто и может быть не нужно вам. По возможности, перенесите все регламентные задания на ночь, когда с базами никто не работает.
Меня один раз просили сделать аудит 1С сервера, который жутко тормозил. При этом там одновременно работало не так много людей, около 10. А железо должно было тянуть человек 50. Баз было много, в том числе тестовых, но людей-то работало мало. Сами по себе базы не должны нагружать сервер.
У директора уже лежал счет на сотни тысяч рублей на новый сервер, который должен был ускорить работу 1С. Я просто зашел на сервер поздно вечером, когда там не было людей и увидел, что процессор в потолок уперся от процессов 1С. Стал разбираться, что там происходит. Оказалось, на всех базах были дефолтные регламентные задания. Достаточно было хотя бы на тестовых их отключить вообще, чтобы нагрузка упала вдвое. А дальше уже стали и в рабочих базах разбираться. Новый сервер не понадобился. Так я за один вечер сэкономил примерно 400 т.р., на которые был счет.
В общем, если у вас тормозят базы 1с, не только файловые, разберитесь в первую очередь с регламентными заданиями, а потом двигайтесь дальше.
Переход на публикацию в WEB
Недавно у меня была статья про настройку публикации баз 1с через web. Всю техническую часть можете посмотреть там. Вам не обязательно делать так же. Я рассказал про то, как делаю я. Просто опубликуйте любым образом и проверьте работу.
Файловые базы публиковать через веб имеет смысл практически всегда, когда с базой работает более 1-го человека одновременно. Как мне рассказал один специалист, работающий постоянно с 1с (сам я не проверял эту теорию), веб сервер выстраивает запросы к базе последовательно и снижает вероятность блокировок. Когда в базе одновременно работают несколько человек, это ускоряет в итоге работу для всех. Если в базе работает один человек, публикация через веб наоборот, снижает производительность.
При этом с базой не обязательно работать через браузер. Более того, я не советую использовать браузер, так как постоянно будете сталкиваться с какими-то проблемами. В браузерах регулярно что-то обновляется, меняются параметры безопасности, устанавливаются и обновляются плагины. В итоге 1С может глючить или работать с ошибками.
Лучше установить полноценную платформу и подключить к ней базу по http.
В таком режиме более ли менее комфортно смогут одновременно работать человек 5 с файловой базой 1С. Конечно, это условная цифра, так как все будет зависеть от размера базы и интенсивности работы.
Терминальный доступ к файловой базе
Предыдущие способы ускорить работу файловой базы можно считать бесплатными, так как не требуют никаких денежных расходов. В данном случае придется немного потратиться на терминальный сервер и лицензии к нему, если будете использовать Windows Server.
Если все предыдущие оптимизации файловой базы не привели к желаемому результату, можете попробовать перенести ее на терминальный сервер, опубликовать через веб и подключить терминальным пользователям эту базу тоже через web. Это важно, подключаем не напрямую, как обычную файловую базу.
Такой режим работы должен быть чуть быстрее, чем удаленное подключение к опубликованной базе. Это уже последние модификации, которые теоретически могут вам улучшить работу баз. Даже если это не поможет, приобретенные лицензии вам пригодятся далее, когда вы перейдете на клиент - серверную работу с 1С.
Заключение
Я поделился исключительно своим опытом работы с файловыми базами 1С. Не нужно его принимать на веру и слепо следовать. Я мог где-то ошибиться или просто заблуждаться, получить неверные данные. Если у вас есть замечания по написанному, делитесь в комментариях.
Используйте статью, как информацию к размышлению, тестируйте и проверяйте свои конфигурации, ищите оптимальные. Если есть, чем дополнить статью и увеличить производительность файловых баз, пишите в комментарии свои советы.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном онлайн-курcе по администрированию MikroTik. Автор курcа – сертифицированный тренер MikroTik Дмитрий Скоромнов. Более 40 лабораторных работ по которым дается обратная связь. В три раза больше информации, чем в MTCNA.
Добрый день! Есть опыт использования дисков m2 под базы 1С? Намного ли увеличивается скорость по сравнению с обычными ssd? (если поднят веб-сервер). Присмотрел диск от самсунга MZ1L2960HCJR-00A07, но будет ли профит? вот в чем вопрос.
Так заочно не сказать. Надо смотреть, какое узкое место сервера. Если производительность упирается в CPU, что бывает часто, то от смены диска ничего не изменится. Но в общем случае конечно более быстрый диск даст какой-то прирост. Другое дело, что он может быть и не заметен.
Только мускул, только хардкор))
Скажите пажаласта, то есть лучше всего запихнуть базы в мускул или постгрескул? Будет прирост в скорости?
В статье я это и объясняю. Скорее всего будет, так как файловый вариант работы самый медленный.
Приветствую! А я так и не понял, какие регламентные задания можно отключить? Всё отключить как на скриншоте? Оставить только 3 первых, которые с галочками на скрине?
Скриншот это просто пример, как список регламентных заданий выглядит. Там по тексту в целом понятно, о чем речь, так что вам решать, какие задания нужны, а какие нет. Обновление индекса поиска и распознавание текста в документах можно отключить.
Все эти тормоза, от нежелания разработчиков заниматься оптимизацией. Она в системе 1С вообще на нуле.
Мы все же говорим про файловую базу. Она изначально не рассчитана на активную совместную работу. Так что предъявлять к ней претензии по оптимизации как-то неправильно.
Тренд тормозных приложений повсеместен и задает его не только 1С. Посмотрите на браузеры. Это особенность современной разработки, а не каких-то конкретных компаний.
Терминальный сервер - переджиток прошлого и уж точно не понадобится при переходе на клиент-сервергый режим работы.
Почему пережиток прошлого? Вы имеете ввиду замену его новым режимом VDI? Это все же разные технологии. Терминальный сервер вполне уместен и в наше время. Не понимаю, что там устарело?
Если слишком тормозит база 1С, то можно тестирование и исправление сделать с сжатием базы, это тоже временно помогает на месяцев 6.
Если с этим были какие-то проблемы, то да, поможет. Базу вообще полезно время от времени выгружать в dt и заливать снова в пустую базу.
Это точно
Чистка кэша и чкдбф, лучше все это последовательно сделать нужно
Забыл указать эл.почту