Оптимизация работы 1С. Часть 1. СЕРВЕР ПРИЛОЖЕНИЙ 1С 8.3 1C. Оптимизация 1с
Оптимизация 1С 8.3 Предприятие заказать услуги 1С в Екатеринбуге (кластер серверов и распределение нагрузки на сервера обслуживанию клиентские запросы по 1С)
Несколько рабочих процессов на одном сервере дают возможность эффективно использовать объем оперативной памяти и ресурсы процессора для выполнения запросов, а также подключить клиентский сеанс к другому рабочему процессу при «крахе» текущего. За понимание, что запущено на конкретном сервере, отвечает программа «Агент сервера» (ragent). Остановка агента сервера сделает сервер недоступным для использования кластером. Свою информацию агент хранит в файле srvribrg.lst.
Информацией о рабочих базах, задействованных рабочих процессах владеет «Менеджер сервера» (rmngr). Эту информацию он хранит в файле 1CV8Reg.lst. Остановка менеджера сервера может привести к перезапуску клиентских приложений в случаи удачного рестарта менеджера или к полной остановке работы рабочих серверов всего кластера.
1С: Предприятие допускает возможность создания на одном сервере несколько независимых кластеров. Каждый из них идентифицируется в сети уникальным «IP портом» и уникальным номером в служебных файлах. Первый кластер по умолчанию получает порт 1541.
Для управления кластером предназначена оснастка «Серверы предприятия». Подключаться к серверам можно по имени или IP адресу сервера.
Агент сервера
Агент сервера «знает» о всех кластерах, которые запущены на сервере. Эта информация хранится в файле srvribrg.lst со списком кластеров и администраторов списка. Основной порт агента – 1540. На каждом Рабочем сервере может быть запущен только один агент, обслуживающей все возможные кластера на данном сервере.
Разберемся поподробнее со свойствами кластера
Интервал перезапуска
Данный параметр перезапускает рабочие процессы сервера 1С по заданному значению в секундах. Обычно параметр используется на тех серверах приложений, которые имеют 32х разрядную систему, так как там объем памяти ограничен ~ 3.7 гб., если используется операционная система 64х разрядная, а сервер приложений 32х. Если же ОС использует 32х разрядную архитектуру, тогда общий объем потребления памяти рабочего процесса составляет ~ 1.7 гб. И пользователи часто могут получать сообщение об ошибке вида “Недостаточно памяти на сервере 1С Предприятие”. Самый простой способ избежать данной ошибки, это сделать перезапуск рабочих процессов, к примеру 86400 секунд (1 сутки). При изменении параметра, отсчет времени начинается со старта службы сервера приложений 1С.
Допустимый объем памяти
Перезапуск рабочих процессов по достижению определенного порога занятой памяти рабочим процессом в килобайтах.
Интервал превышения допустимого объема памяти
Означает, если в течении заданного количества секунд произойдет превышение памяти, заданного в параметре “допустимый объем памяти”, тогда сервер 1С примет решение перезапустить рабочий процесс.
Допустимое отклонение количества ошибок сервера
Вычисляется следующим образом. У нас есть серверные вызовы, которые возможно увидеть в технологическом журнале по событию “CALL” а также есть различные исключительные ситуации, которые в технологическом журнале можно увидеть по событию “EXCP”. Платформа вычисляет соотношение данных событий. Предполагается, что данных событий должно быть приблизительно одинаково. Если же в каком-либо рабочем процессе данное соотношение превышает соотношение данных событий в других рабочих процессах на некую значительную величину, то такой рабочий процесс признается проблемным. Как раз данная величина задается в этом параметре. Рекомендуемое значение – 50.
Принудительно завершать проблемные процессы
Если мы включим данный параметр, то по параметру “допустимое отклонение количества ошибок сервера”, проблемные процессы будут завершены. Если параметр выключен, то платформа выводит событие технологического журнала “ATTN”, которое обозначает проблемный процесс.
Выключенные процессы останавливать через
Если сработает один из параметров “интервал перезапуска” или “допустимый объем памяти, то при перезапуске рабочего процесса, он может “отвалиться”. Если клиент во время перезапуска не обращается к серверу (бездействует), то при следующем обращении он плавно переключится на новый рабочий процесс. Если же клиент обращается к серверу в момент перезапуска рабочего процесса, то в данном случае он получит сообщение об ошибке и завершит свою работу. Чтобы этого не произошло, необходимо задать значение данного параметра в секундах. Обычно хватает 120 секунд. За это время рабочий процесс успеет обработать текущие запросы клиентов и перевести их на новый рабочий процесс. Тех активных клиентов, которых процесс не успел обработать, завершается и клиенты возможно могут получить ошибку.
Уровень отказоустойчивости
Данная настройка живет сама по себе не зависимо от количества центральных серверов. Уровень отказоустойчивости может принимать любые значения. К примеру, уровень отказоустойчивости = 1, тогда каждый сеанс пользователя удваивается. Если уровень отказоустойчивости = 2, то каждый сеанс умножается на 3. Также возрастает нагрузка на сервер. При изменении уровня отказоустойчивости, если у нас центральный сервер, он реплицирует на каждый центральный сервер: “реестр кластера”, “сервис блокировок кластера”. Также идет репликация на остальные серверы таких сервисов, как “сервис сеансовых данных”, “сервис оперативной отметки времени”, “сервис блокировок объектов”, “сервис лицензирования”, “сервис нумерации”. Среди них самым тяжелым является “сервис сеансовых данных”.
Режим распределения нагрузки
По производительности. Когда клиентское соединение подключается, оно будет подключено к тому серверу, где присутствует рабочий процесс с более доступной производительностью. Доступная производительность задается в свойствах рабочего процесса:
Доступная производительность на уровне 1С вычисляется следующим образом: ко всем рабочим процессам делается эталонный серверный вызов 1 раз в 10 минут и замеряется время данного вызова. Полученное число делится на 10000 (десять тысяч) и механизмами сервера приложения вычисляется эталонное время. В том случае, если производительность какого-либо рабочего процесса стала на 25 % меньше, чем у остальных, с данного рабочего процесса соединения начинают уходить на остальные рабочие процессы до тех пор, пока все соединения не уйдут.
Приоритет по памяти. Подключения пользователей будут производиться к такому рабочему серверу, у которого больше доступной памяти.
Менеджер кластера
Менеджер кластера отвечает за работу кластера. У каждого кластера свой Менеджер. Менеджер хранит информацию о кластере в файле 1CV8Reg.lst (реестр кластера). У каждого Менеджера кластера также есть свой порт на Рабочем сервере. Для первого кластера по умолчанию порт Менеджера 1541. Именно этот порт отображается в оснастке «Серверы 1С: Предприятия» в ветке «Кластеры», идентифицируя кластер. Менеджер принимает запросы от клиентской части 1С: Предприятия и принимает решение, какому Рабочему процессу отдать этот запрос на обслуживание.
Для взаимодействия с рабочими процессами Менеджер использует служебный порт.
Рабочий процесс
За «работу с клиентами» отвечает Рабочий процесс. Рабочих процессов в кластере 1С: Предприятия 8 может быть несколько. Количество рабочих процессов не создается вручную, а рассчитывается исходя из описаний требований задач по отказоустойчивости и надежности. Менеджер сервера решает, какой из рабочих процессов будет обслуживать клиентское подключение. Для клиентских подключений Рабочим процессам по умолчанию выделяется диапазон IP портов 1560 – 1591. Кроме этого, каждому Рабочему процессу назначается Служебный порт для обмена с менеджером кластера.
Настройки рабочего сервера, по документации фирмы 1С, можно изменять только в версии КОРП сервера приложений 1С. По факту настройки работают как в версии КОРП, так и в версии ПРОФ. Если данные настройки использовать в версии ПРОФ, это будет являться нарушением лицензионного соглашения.
Максимальный объем памяти рабочих процессов
Данный параметр сам по себе ничего не ограничивает. Он работает в связке с параметром “безопасный расход памяти за один вызов”. Представим, что все наши рабочие процессы суммарно достигли приблизительно расхода по памяти от заданного значения данного параметра. И теперь некий пользователь хочет сделать некий серверный вызов, который хочет потребить большое число памяти. Как только серверный вызов превысит объем заданной памяти в данном параметре на объем памяти параметра “безопасный расход памяти за один вызов”, именно данный пользователь получит ошибку вида: “превышен безопасный расход памяти за один клиент-серверный вызов”. Это нужно для того, чтобы один какой-либо пользователь не смог “завалить” рабочий сервер. Значение параметра 0 равно 80 % памяти, установленной на сервере 1С.
Безопасный расход памяти за один вызов
Значение 0 (по умолчанию) составляет 5 % от значения параметра “максимальный объем памяти рабочих процессов”. Может быть значение -1. Это означает, что любой клиент-серверный вызов, превысивший заданное значение параметра “максимальный объем памяти рабочих процессов”.
Объем памяти рабочих процессов, до которого сервер считается производительным
Означает, если установлено значение и рабочие процессы заняли объем памяти, указанный в данном параметре, сервер будет продолжать работать, но не будет принимать новые подключения до тех пор, пока память не освободится.
Количество ИБ на процесс
Возможно снижение производительности, когда много информационных баз и один рабочий процесс. Поэтому данным параметром возможно уменьшить количество баз на 1 процесс. Если поставить значение 1 (в большинстве случаем это работает достаточно оптимально), то на каждую информационную базу будет создаваться новый рабочий процесс (rphost).
Количество соединений на процесс
Так же как параметр выше, только зависит от количества соединений на процесс. Значение 0 будет означать, что на каждом рабочем сервере будет только один рабочий процесс.
Менеджер под каждый сервис
У каждого центрального рабочего сервера есть главный менеджер кластера с определенными сервисами:
Они выполняются одной службой “rmngr”. Представим, что данная служба начинает потреблять много памяти или тратить процессорные ресурсы. Обычно есть несколько типичных подозреваемых. Но вдруг вы встали в “тупик” и не можете понять, что именно нагружает службу, вы можете установить галочку “менеджер под каждый сервис”, служба разобьется на 21 процесс (таково количество сервисов в главном менеджере кластера). И соответственно по PID процесса можно будет вычислить, какой сервис нагружает систему.
Центральный сервер
Это сервер, у которого хранится реестр кластера в файле 1СV8Clst.lst. В файле хранится список баз, список администраторов кластера, список требования назначения функциональности, список профилей безопасности, в общем все настройки кластера. Данный файл присутствует только там, где установлена галочка “центральный сервер”. Центральных серверов может быть несколько. Так же на центральных серверах присутствуют такие сервисы, как “сервис блокировки кластера”, “сервис конфигурации кластера”. Пока хотя бы один центральный сервер работоспособен, кластер функционирует. Как только самый последний центральный сервер вышел из строя, кластер становится неработоспособным не зависимо от настроек отказоустойчивости.
Требование назначения функциональности
Кластер серверов 1С Предприятия 8.3 предоставляет некоторый набор функциональных возможностей (называемые объекты требований), распределением которых между рабочими серверами внутри кластера можно управлять. Например, можно указать, что все фоновые задания в кластере будут выполняться на выбранном рабочем сервере. Для того, чтобы поместить соединение или сервис кластера на какой-либо рабочий сервер, необходимо для выбранного рабочего сервера создать требование назначения функциональности. Это требование определяет возможность или невозможность конкретного сервера выполнять ту или иную работу. Рассмотрим более подробно, что собой представляет требование назначения функциональности.
Перенос пользовательских соединений
Допустим мы хотим, чтобы пользовательские соединения работали на рабочем сервере № 1, но если этот сервер выходит из строя, мы хотим, чтобы они переходили на другой рабочий сервер № 2
Для этого нам необходимо на сервере № 1 создать требование назначения функциональности:
На сервере № 2 прописать такие же настройки, но изменить приоритет:
Важность приоритета реализована наоборот. То есть, приоритет 1 выше, чем приоритет 2.
Вывести рабочий сервер из кластера
Вывести рабочий сервер из кластера мы можем и просто, удалив его из списка, но в таком случае всех пользователей “выкинет” из системы. Чтобы более безболезненно осуществить вывод, можно сделать следующее:
Создать требование назначения функциональности со следующими настройками:
Данная настройка означает, что новые подключения к этому рабочему серверу не будут. Те пользователи, которые работали, они продолжат работу, но постепенно перейдут на другие рабочие сервера.
Сервис лицензирования
Вынести сервис лицензирования на отдельный сервер. Это хорошо тем, что программные лицензии можно привязать к определенному компьютеру. Создадим требование назначения функциональности со следующими настройками:
Фоновые задания
С выходом платформы 8.3.7, фоновые задания разделились на 2 группы:
1. Фоновые задания, вызываемые из кода конфигурации
2. Регламентные задания
Поэтому необходимо несколько настроек назначения функциональности:
1. Запретить все фоновые задания
1. Запретить все регламентные задания
1. Чтобы фоновые задания выполнялись быстро, необходимо добавить сеансовые данные для фоновых и регламентных заданий
1. Запретить остальные сервисы
После создания необходимых требований назначения функциональности, необходимо их применить:
Частичное – применение, которое не нарушит работу пользователей
Полное – применение, которое может нарушить работу пользователей.
На практике ни разу не встречалось, чтобы при полном применении нарушало работу пользователей или что-то подобное. Но все возможно, имейте ввиду. После применения, перезапуск службы сервера приложений 1С не обязателен.
Вы всегда можете обратиться к специалистам по оптимизации работы 1С, наш практический опыт сэкономит Ваше время.
Заявку на консультацию, Вы можете отправить на e-mail: [email protected] |
sovetnik1c.ru
Оптимизация 1С
Диагностика
Комплексный аудит
Оптимизация
КАК ТОРМОЗИТ 1С?
- Частые конфликты блокировок - требуют дополнительного администрирования и снятия сеансов -"виновников"
- Утечки памяти - требуют длительной остановки системы и перезагрузки серверов
- Высокая загрузка ресурсов оборудования - требуются значительные затраты на модернизацию IT- инфраструктуры
- Длительный отклик системы - невозможно быстро заполнить формы
- Задержки при печати - очередь клиентов на получение документов
- Постоянные сбои и "вылеты" из системы - раздражение и снижение эффективности работы
- Медленное проведение документов - раздражение и увеличение вероятности ошибки
- Длительное формирование отчетов - риск несвоевременной сдачи в контролирующие органы, и как следствие, штрафы
- Сводные показатели неоперативны - невозможно быстро принять решение
- Задержки в обслуживании - риск потери клиентов
- Постоянные жалобы сотрудников на неудобство - потеря времени на решение организационных проблем
ПОЧЕМУ ТОРМОЗИТ 1С?
МОЖНО ЛИ РЕШИТЬ ПРОБЛЕМЫ
ПРОИЗВОДИТЕЛЬНОСТИ 1С СВОИМИ СИЛАМИ?
- У нас уже 50 пользователей, нам нужна «более взрослая» система учета, 1С - для мелких фирм.
- Мы без проблем найдем специалиста, который за небольшие деньги оптимизирует работу 1С, ведь одинэсников на рынке труда - пруд пруди.
- Мы научим своих программистов и они решат все проблемы производительности и будут поддерживать систему в дальнейшем.
- Мы обратимся к партнеру 1С. Выберем самого опытного и известного, там точно работают высококлассные специалисты, которые могут решить любые задачи. Партнеров 1С - тысячи.
- Мы купим новый, мощный сервер и все заработает очень быстро.
- За более чем 10 лет существования 1С 8 стала «крепким середнячком» и, при правильной настройке, без проблем работает с базами в сотни гигабайт да и 200-300 пользователей - это далеко не предел.
- На рынке труда много начинающих, чуть меньше опытных и еще меньше профессиональных программистов 1С. А вот экспертов по технологическим вопросам - единицы. Их нет «в свободном доступе».
- Обучить своих специалистов - дело не одного года. И это дорого. Эксперт - это минимум 5 лет опыта на различных проектах. А 1С «тормозит» сегодня и есть много того, что нужно было посчитать «на вчера».
- 99% партнеров 1С ведут стандартный франчайзинговый бизнес: продают типовые решения и оказывают услуги по их начальной настройке. Некоторые имеют центры обучения бухгалтеров и начинающих программистов. Партнеров 1С, которые занимаются оптимизацией и тонкой настройкой высоконагруженных систем очень мало и они, как правило, загружены работой.
- Зачастую, проблема производительности - не в вычислительных мощностях. Очень часто сервера недогружены, а скорость работы системы оставляет желать лучшего. Производительность 1С - это комплексная проблема. Чтобы не тратить деньги впустую на оборудование - необходима предварительная диагностика, да и выбор сервера для 1С - не элементарная задача.
ДВА ВАРИАНТА УСКОРЕНИЯ 1С?
- Мы проводим ознакомление с проблемой, фиксируем очевидные параметры (какая конфигурация используется, размер БД, количество пользователей, характеристики оборудования и пр.).
- Проводим точечный аудит: интервьюируем недовольных скоростью работы пользователей, определяем проблемные точки и ранжируем по приоритету.
- Проводим несколько специальных тестовых процедур, которые помогают "оцифровать" найденные проблемы. На выходе - набор конкретных параметров производительности.
- Далее, выделяем 3-5 технических проблем. Это могут быть неоптимальные настройки системы 1С, окружения или ошибки в коде. Мы умеем читать "чужой" код любой сложности.
- После этого - оптимизация. Мы правильно настраиваем определенные проблемные участки системы, если нужно, переписываем часть кода, показываем ошибки и выносим краткие рекомендации по поддержке конкретных участков системы в рабочем состоянии.
- Этот пакет услуг подойдет для быстрого решения конкретных задач ("долго отображаются данные в списке", "отчет формируется два часа", "программисты дописали документ и он стал проводиться 5 мин"...), для систем в которых одновременно работают до 20-30 пользователей.
- Время оптимизации 2-3 рабочих дня.
- При этом мы не даем гарантии оптимальной работы других участков системы, не можем предсказать поведение системы при резком увеличении количества пользователей или значительном увеличении количества записей в базе данных.
- Но! Отчеты вы сдадите и перед инвесторами отчитаетесь.
- Мы проводим глубокий анализ архитектуры системы в целом в т.ч. разбираемся в бизнес-логике конфигурации.
- Проводим комплексный аудит: собираем информацию о работе пользователей в разные периоды времени, с помощью специальных тестов, делаем замеры времени выполнения конкретных операций. Определяем "узкие места" работы системы. Накладываем результаты на "субъективные" ощущения пользователей, находим корреляции, ранжируем проблемы по приоритетам.
- С помощью специальных нагрузочных тестов точно определяем параметры оборудования. Детально исследуем IT-инфраструктуру.
- Собираем статистическую информацию о конфликтах блокировок транзакций, взаимоблокировках и длительных запросах к базе данных.
- Находим все проблемные точки (запросы-виновники взаимоблокировок, неоптимальные запросы к БД, "медленные" участки кода, ошибки в архитектуре).
- Проводим аудит настроек сервера баз данных. Настраиваем правильное расположение файлов баз данных, включаем планы обслуживания, проводим тонкую настройку SQL сервера.
- Оптимизируем найденные проблемные участки и находим возможные взаимосвязи с другими, потенциально уязвимыми частями системы. "Защищаем" эти участки и выносим рекомендации по поддержке их в рабочем состоянии.
- Находим участки системы, которые работают нормально на текущий момент, но могут сказаться на производительности при увеличении размера базы данных или при подключении большего количества пользователей. При необходимости вносим корректировки и даем консультации.
- После оптимизации делаем контрольные замеры производительности и сравниваем показатели с первоначальными. Делаем выводы.
- Этот пакет - для средних и крупных систем на базе 1С (размер базы данных - десятки и сотни гигабайт, количество пользователей более 50). Отлично подходит для уникальных конфигураций, разработанных силами собственных отделов программирования 1С или сильно измененных типовых конфигураций.
- Время выполнения работ от недели до 2-3 месяцев.
- При этом мы даем гарантию нормальной работы оптимизированных участков при масштабировании системы учета.
- Оказываем информационную поддержку специалистам заказчика после завершения проекта.
УВЕЛИЧИВАЙТЕ СКОРОСТЬ РАБОТЫ1С ВМЕСТЕ С НАМИ!
- Практически все работы выполняются удаленно, на ваших компьютерах
- Инструментарий для анализа по большей части облачный
- Не нужно ждать специалиста - он всегда онлайн
- Вы всегда можете задать вопрос и получить квалифицированный ответ эксперта
- Наши услуги значительно дешевле обучения собственных специалистов
- Вы платите только за результат
- Результат - это не абстрактное "стало немного быстрее", а четкий набор показателей производительности до и после оптимизации
- Мы используем кейсы готовых решений и не тратим время попусту
- Вы можете наблюдать и фиксировать все наши действия
- Мы с удовольствием комментируем все действия и делимся частью инструментов
- В процессе оптимизации мы указываем на "узкие места" и ошибки и выносим рекомендации по их недопущению в будущем
- Мы открыты, у нас нет секретов от заказчика
REALITY В СОЦСЕТЯХ
Москва, Сибирский проезд 2, строение 9, офис 53
Тел.: +7 (499) 322-82-58
Киев, пр-т Академика Палладина 25, офис 207
Тел.: +38 (044) 361-40-92
ДРУГИЕ САЙТЫ REALITY
fast1c.reality.sh
Ускорение базы 1С 8.3: оптимизация и повышение быстродействия
Курсы 1С 8.3 и 8.2 » Статьи про 1С 8.3 » Обучение 1С ЗУП 8.3 (3.0) » Ускорение базы 1С 8.3: оптимизация и повышение быстродействия
Многие пользователи часто недовольны тем, что программа 1С 8.3 Бухгалтерия тормозит, работает медленно. Что приходится долго ждать открытия форм документов, медленно проводятся документы, на формирование отчетов тратится много времени и так далее. В данной статье рассмотрим наиболее эффективные методы исходя из нашего опыта, после выполнения которых файловая база 1С 8.3 работает на порядок быстрее.
Тормозит 1С 8.3 — что делать? Как ускорить работу 1С и увеличить быстродействие программы
Для ускорения работы в программе 1С 8.3 рекомендуем использовать следующие способы:
- Настройка регламентных и фоновых заданий;
- Диагностика и устранение ошибок информационной базы, имеющий файловый формат хранения данных;
- Запустить индексацию полнотекстового поиска в 1С либо выключить его вовсе;
- Запуск базы на последних Платформах 8.3.8;
- Запуск в Тонком Клиенте;
- Увеличение скорости перепроведения документов при отключенном антивирусе;
- Запустить Пересчет итогов и восстановление последовательности;
- Выполнить Тестирование и исправление базы, проверку утилитой chdbfl.exe;
- Если конфигурация не типовая, то есть доработанная программистами под конкретную организацию, выполнить Проверку конфигурации;
- Отключить ненужные функциональные режимы;
- Настроить права пользователей;
- Дефрагментация диска с файловой базой;
- Свертка базы;
- Модернизация аппаратной части.
Далее рассмотрим более подробно предложенные методы.
Способ 1. Настройка регламентных и фоновых заданий
Приложение в новой редакции 1С Бухгалтерия 3.0 помимо выполнения основной работы запускает операции в фоновом режиме, которые ведут к снижению быстродействия программы.
Фоновый режим — это режим ожидания, то есть операция запущена всегда, хоть и не используется.
Шаг 1. Настройка регламентных и фоновых заданий
Открываем перечень регламентных и фоновых заданий: раздел Администрирование – Поддержка и обслуживание – Регламентные операции – Регламентные и фоновые задания:
После запуска программы 1С 8.3 автоматически запускаются фоновые задания и выполняются регламентные задачи, которые используют огромное количество ресурсов и замедляют работу программы. Следовательно, нужно проанализировать работу бухгалтеров и определить какие фоновые задачи целесообразно оставить в автозапуске, а какие нужно отключить.
На рисунке видим список регламентных заданий, которые запускаются в 1С 8.3 Бухгалтерия:
На рисунке видим список выполненных фоновых заданий:
Например,
- Программа 1С 8.3 Бухгалтерия для обновления различных классификаторов постоянно подключается к сайту;
- Если на предприятии не ведутся операции связанные с иностранной валютой, то нет необходимости отслеживать курсы валют;
- Если бухгалтер не пользуется полнотекстовым поиском в программе, то не целесообразно запускать процесс «Извлечение текста».
Шаг 2. Отключение нецелесообразных задач
Рассмотрим подробно как отключить загрузку классификатора банков в 1С 8.3. Установим курсор на нужную строку и сделаем двойной щелчок:
Для отключения задания убираем галочку Включено:
Шаг 3. Настройка расписания регламентных задач
Рассмотрим подробно, как настроить расписание загрузки курсов валют. Установим курсор на нужную строку и сделаем двойной щелчок:
Выберем пункт Расписание:
В открывшемся окне переходим на нужную закладку и делаем соответствующую настройку:
Способ 2. Диагностика и устранение ошибок информационной базы, имеющей файловый формат хранения данных
Шаг 1.
Создаем резервную копию базы данных.
Шаг 2.
Запускаем процедуру Тестирования и исправления информационной базы. Для этого открываем Конфигуратор и запускаем процедуру Тестирование и исправления информационной базы: раздел Администрирование – Тестирование и исправление. Выбираем проверки и режимы, которые нужно выполнить для информационной базы:
Рассмотрим, подробнее предлагаемые варианты проверки:
- Реиндексация таблиц информационной базы – перестраивает индексы таблиц для повышения быстродействия работы базы данных;
- Проверка логической целостности информационной базы – проверка логики базы данных;
- Проверка ссылочной целостности информационной базы – проверка логической целостности базы данных для обнаружения «битых» ссылок;
- Пересчет итогов – перерасчет итогов таблиц регистров накопления;
- Сжатие таблиц информационной базы – уменьшает размер базы данных после тестирования и исправления;
- Реструктуризация таблиц информационной базы – оптимизирует структуру базы данных используя вспомогательные файлы с целью повышения стабильности и быстродействия.
Если выбираем вариант процедуры Тестирование и исправление в режиме Проверка ссылочной целостности информационной базы, то пункты настроек по обработке ошибок базы данных становятся доступными:
- Пункт При наличии ссылок на несуществующие объекты означает, что при обнаружении «битых» ссылок, будет обрабатывать ссылки, используя выбранный вариант;
- Пункт При частичной потере данных объектов означает, что остаток данных достаточен для восстановления данных какого-либо объекта.
Процедуру тестирования и исправления информационной базы 1С можно выполнять только в монопольном режиме.
Способ 3. Запустить индексацию полнотекстового поиска в 1С либо выключить его вовсе
Полнотекстовый поиск данных компания 1С разработала для облегчения поиска незнакомой информации пользователем. Особенностью полнотекстового поиска данных в 1С 8.3 является:
- Пользователь может вводить поисковый запрос в простой форме и использовать специальные операторы, такие как: и, или, не.
- Полнотекстовый поиск данных работает с полями типа ХранилищеЗначения и с длинными текстовыми полями, при этом пользователю не будут показаны результаты на которых у него нет прав.
Например, нужно настроить полнотекстовый поиск в документах Авансовый отчет.
Шаг 1.
Запускаем программу в режиме Конфигуратор.
Шаг 2.
Открываем документ Авансовый отчет: меню Конфигуратор – Открыть конфигурацию.
Шаг 3.
В строке Полнотекстовый поиск выбираем пункт Использовать: Авансовый отчет – Поле ввода – Полнотекстовый поиск:
Шаг 4.
Запускаем программу и обновляем режим полнотекстового поиска. Открываем Регламентные операции: раздел Администрирование – Настройки программы – Поддержка и обслуживание:
Шаг 5.
Открываем настройку и обновляем индекс используя кнопку Обновить индекс:
Способ 4. Запуск базы на последних платформах 8.3.8
Как обновить технологическую платформу 1С 8.3 смотрите в нашем видео уроке:
Специалисты 1С улучшили распределение нагрузки:
- Имеется возможность более точно управлять объемом памяти, расходуемой рабочими процессами сервера, что позволяет повысить устойчивость кластера к неосторожным действиям пользователей.
- Реструктуризация информационных баз в фоновом режиме. Новая возможность позволяет свести к минимуму время простоя системы, необходимое для обновления прикладных решений.
- Платформа версии 8.3 получила новый интерфейс приложений “Такси”, более удобный и наглядный с новым ярким дизайном. Улучшились возможности навигации по приложению. Пользователь может самостоятельно настраивать свое рабочее пространство, располагая панели в разных областях экрана. Новый механизм ввода по строке существенно ускоряет поиск данных. Подробнее о новых возможностях программы 1С 8.3 Бухгалтерия интерфейс “Такси” смотрите в нашем видео:
Способ 5. Запуск в Тонком клиенте
Работа в режиме тонкого клиента возможна только в режиме управляемого приложения. В режиме тонкого клиента все действия выполняются на сервере, пользователю выводиться лишь отображение получаемой информации. Этот режим работы не требует больших ресурсов как системы, так и канала связи.
Способ 6. Поменять антивирусное программное обеспечение
Если стоит антивирус Avast или Касперский, то желательно заменить на другой. Опыт показал увеличение скорости перепроведения документов при отключенном антивирусе в разы, так как антивирусы занимают ресурсы компьютера.
Способ 7. Тестирование и исправление базы, проверка утилитой chdbfl.exe
Необходимо выполнить Тестирование и исправление базы, проверку утилитой chdbfl.exe, предварительно сделав копию.
Шаг 1. Делаем копию базы данных
Как сделать резервную копию 1С 8.3 смотрите в следующем видео уроке:
Шаг 2. Выполняем проверку с помощью утилиты chdbfl.exe
Утилиту chdbfl.exe используют в случаях, когда система не запускается даже в режиме конфигуратора. Расположена утилита в папке «bin» установленной технологической платформы, например: c:\Program Files (x86)\1cv8\8.3.9.1818\bin\chdbfl.exe:
Выполняем проверку с помощью утилиты chdbfl.exe:
Шаг 3. Выполнить Тестирование и исправление базы
Выполнить Тестирование и исправление базы запустив систему в режиме конфигуратора.
Шаг 4. Восстановление последовательности документов
Для восстановления последовательности в 1С 8.3 открываем Все функции: главное Меню – Все функции. Выбираем нужный пункт и открываем используя кнопку Открыть:
В открывшемся окне на закладке Восстановление последовательностей и нажимаем Восстановить или Восстановить все:
Способ 8. Если конфигурация не типовая, то выполнить проверку конфигурации
Если конфигурация не типовая, то есть доработанная программистами под конкретную организацию, то выполняем проверку конфигурации.
Шаг 1.
Запускаем программу в режиме Конфигуратор.
Шаг 2.
Открыть конфигурацию БД: раздел Конфигурация – Конфигурация базы данных:
Шаг 3.
Выбираем пункт Проверка конфигурации и делаем настройки:
Способ 9. Отключить ненужные функциональные режимы
Открываем Функциональность программы 1С 8.3: раздел Главное – Настройки – Функциональность, делаем настройки по каждому разделу:
Способ 10. Настроить права пользователей
Шаг 1.
Запускаем 1С 8.3 в режиме Конфигуратор.
Шаг 2.
Настройка прав доступа пользователя 1С 8.3 к объектам базы. Открываем список пользователей: раздел Администрирование – Пользователи. На закладке Прочее определяем какие роли нужно назначить пользователю и отметить их галочкой.
Уменьшение выбранного функционала уменьшает время на отсортировку программой управляемых форм при открытии списка документов, то есть чем меньше лишнего в управляемом интерфейсе – тем быстрее он работает:
Способ 11. Дефрагментация диска с файловой базой
Процедура дефрагментация диска производит оптимизацию файлов находящихся на жестком диске для увеличения скорости работы системы. Дефрагментацию нужно делать только при необходимости, так как увеличивает процесс износа диска.
Выделив жесткий диск, правой клавишей мыши вызываем команду Свойства:
На закладке Сервис выбираем Оптимизация и дефрагментация диска:
Способ 12. Свертка базы
Свертка базы 1С 8.3 – это ввод актуальных остатков на определенную дату и удаление старых, ненужных документов. Этот способ может оказаться полезным, если база большого объема, например, за несколько лет. Свертку необходимо производить без работающих в системе пользователей.
Шаг 1. Создаем копию базы данных
Шаг 2. Выполняем процедуру свертки базы 1С 8.3
Раздел Администрирование – Сервис – Свертка информационной базы.
На первом этапе Создание резервной копии программа 1С 8.3 предлагает сделать резервную копию, где нужно указать каталог для сохранения. Нажимаем Далее:
На втором этапе Настройка свертки указываем организации, по которым нужно делать свертку и на какой период. Нажимаем Далее:
На третьем этапе Формирование остатков выбираем регистры для формирования остатков. Здесь лучше оставить настройки по умолчанию. Нажимаем Далее:
На четвертом этапе Просмотр операций программа сформирует документы ввода остатков, которые доступные для просмотра. Нажимаем Далее:
На пятом этапе Проверка программа автоматически делаем проверку и формирует отчет, в котором отражаются остатки до свертки и после свертки. Нажимаем Далее:
На шестом этапе Удаление старых документов программа удаляет старые документы. Нажимаем Далее:
Шаг 3. Удаляем помеченные на удаление объекты
Запускаем обработку Удаление помеченных объектов в 1С: раздел Администрирование – Сервис:
Способ 13. Модернизация аппаратной части
Ускорение базы 1С можно сделать установив более быстрый винчестер, новый свитч, процессор и т.д.
Для пользователя важно правильно настроить программу и корректно отражать хозяйственные операции. Чтобы научиться работать в программе 1С, изучить весь функционал и стать продвинутым пользователем программы 1С Бухгалтерия 8.3 ред. 3.0 приглашаем на наши курсы и семинары.
Поставьте вашу оценку этой статье: Загрузка...Дата публикации: Ноя 8, 2016
profbuh8.ru
Оптимизация клиент-серверной 1С версий 8.2 и 8.3
Интерфейс 1С Предприятия в режиме «Управляемое приложение» ориентирован на возможность работы не только в обычной локальной сети, но и на возможность работы через Интернет, в том числе по низкоскоростным каналам связи, например, GPRS, Dial-up. Платформа содержит большое количество механизмов, которые автоматически оптимизируют работу системы в этих условиях. Кроме того, существует специальный параметр запуска «Низкая скорость соединения», включающий работу дополнительных средств оптимизации 1С 8.2 и 8.3.
Однако, оптимизация не может быть полностью выполнена платформой без участия разработчиков конфигураций. При разработке прикладных решений необходимо придерживаться определенных методик для того, чтобы обеспечить эффективную работу конфигураций при использовании низкоскоростных каналов связи. В этой статье описывается общий подход к тому, как вести разработку и оценивать эффективность работы. Особенности работы конкретных механизмов платформы и их оптимизации описываются в других материалах.
Существует два основных предмета оптимизации:
- Количество вызовов.
- Объем передаваемых данных (трафика).
Инструменты
Важно учитывать, что на некоторых видах соединения количество вызовов очень сильно влияет на производительность системы, так как каждый вызов, независимо от объема передаваемых данных, может занимать до 1.5 секунд.
В платформе существуют следующие инструменты для оптимизации и оценки работы системы:
1. Показатели производительности.
Механизм выдает в режиме 1С:Предприятия общую информацию о количестве вызовов и объеме передаваемых данных по каждому интерактивному действию пользователя. Он удобен тем, что выдает информацию в процессе работы и не требует специальных действий. С помощью него можно не только проводить целенаправленный анализ, но и «присматривать» по ходу разработки за этими показателями.
2. Замер производительности в конфигураторе
Позволяет оценивать количество вызовов сервера по отдельным строчкам кода выполняемых модулей.
3. Имитация задержки при вызовах сервера.
Позволяет при разработке визуально оценить, как будет вести себя система в условиях работы на низкоскоростных каналах связи.
Основная сложность оптимизации при разработке конфигурация заключается в том, что реальная работа интерфейса включает совместную работу платформы и конфигурации. При этом разработчику конфигурации не всегда детально понятна работа внутренних оптимизирующих механизмов платформы.
Стратегия оптимизации
Основная стратегия оптимизации работы платформы построена на минимизации передаваемой на клиента информации по количеству вызовов и объему данных. Для этого платформа действует по следующей методике:
- Передает на клиента только то, что нужно на клиенте.
- Передает не всю информацию сразу, а, по возможности, реализует принцип передачи «по требованию», чтобы не передавать большие объемы данных.
- Передает информацию определенным порциями, чтобы не делать большого количества вызовов сервера.
- Использует многоуровневое кэширование, чтобы не передавать повторно информацию, уже переданную на клиента.
Легко заметить, что некоторые пункты методики противоречат друг другу. Это естественно, так как нужно оптимизировать работу системы и по объемам и по количеству вызовов. Соответственно, в работе платформы реализуются компромиссные решения. Остановимся чуть подробнее на механизмах кэширования. Можно выделить следующие основные уровни кэширования:
- Кэширование между сеансами.
Получите 267 видеоуроков по 1С бесплатно:
Система запоминает то, что было получено на клиенте в сеансе и не получает эту информацию в последующих сеансах. Этот кэш очищается частично при смене версии платформы, частично при обновлении конфигурации.
- Кэширование в пределах сеанса.
Система запоминает информацию, полученную в ходе сеанса и не получает ее при аналогичных вызовах в том же сеансе. Этот кэш сбрасывается при окончании сеанса.
- Кэширование в пределах формы.
Система запоминает информацию, полученную для данной формы. Этот кэш сбрасывается при закрытии формы.
Для разных механизмов платформы используются разные уровни кэширования. Заметим, что на самом деле механизмы кэширования имеют более сложное деление, а здесь уровни описаны в упрощенном виде.
Таким образом, реальные действия платформы в конкретной ситуации могут зависеть от множества факторов. При этом инструменты, предоставляемые разработчику конфигурации для анализа, перечисленные выше, в существенном количестве случаев отражают совместную работу системы — как механизмов платформы, так и конфигурации. Соответственно при оптимизации конфигурации нужно уметь выделять ту нагрузку, которая привнесена именно конфигурацией.
Сценарии тестирования
Для проверки разработанного решения следует подобрать правильные сценарии проверки.
При оптимизации прикладных решений важно учитывать необходимость проверки типичных сценариев работы. Поэтому при проверках нужно ориентироваться на максимально реалистичные объемы данных и последовательность действий пользователя. Например, работу с табличной частью нужно проверять при наличии в табличной части ожидаемого количества строк. При этом желательно проверить работу как на типичном (среднем) количестве строк, так и на ожидаемых редких ситуациях, чтобы проверить, не будет ли недопустимого снижения производительности.
Подобрав правильные тестовые данные и сценарии нужно подобрать правильный сценарий проверки с учетом описанных выше механизмов кэширования. Можно выделить три уровня испытаний:
- Первое действие после изменения конфигурации
- Первое действие в сеансе, если в предыдущем сеансе уже выполнялось аналогичное действие
- Повторное действие в сеансе, если в этом сеансе уже выполнялось аналогичное действие
В приведенных уровнях мы не указали случай смены версии платформы. Предлагается этот случай не учитывать, так как он редкий и оптимизировать для него конфигурацию не представляется целесообразным.
Для уровня 1) замеры провести можно, но в большинстве случаев ими можно пренебречь, так как это не очень частый случай и в нем количество вызовов, и объем данных будут существенно выше, чем в двух последующих.
Наибольший интерес представляют уровни 2) и 3). Их имеет смысл проверять отдельно. При наличии ограниченного времени на анализ и оптимизацию следует отдать приоритет уровню 3. Хотя здесь важно учитывать реалистичные сценарии. Например, может быть типичная ситуация, при которой пользователи будут запускать систему для выполнения одного действия (визирования заявки). В этом случае, критичным становится уровень 2).
Для оценки уровня 3) важно учитывать правильный подбор повторяемых действий. Например, если пользователь вводит подряд много заказов на продажу товаров, то для оценки нужно использовать сценарий, при котором в этом сеансе уже создавался такой документ (и были выполнены все действия по его заполнению), но при этом использовались другие данные (контрагент и товары). Потому, что часть кэширования ориентируется на конкретный состав данных и для правильной оценки реальной ситуации нужно проверять меняющийся состав данных, так как в реальной работе это будет, скорее всего, именно так.
Таким образом, основные принципы — максимальное приближение тестового прогона сценария к реальной жизни. Допустим, мы будем замерять работу системы по вводу заказа в уровне 3). Для этого нужно запустить систему, ввести, например, два заказа с разными данными, потом завершить сеанс. В новом сеансе (от лица того же пользователя), снова ввести первый заказ и только при вводе второго заказа выполнить необходимые замеры. Это позволит замерить самый частотный случай — ввод не в первом сеансе и не первого документа в сеансе, но ввод с новыми данными, которые не использовались в этом сеансе.
Для оценки работы системы можно использовать все три, перечисленных выше, инструмента.
Заметим, что показатели производительности можно вывести в виде таблицы и сохранить в файле для последующего сравнения.
Режим имитации задержек при вызове сервера имеет смысл применять отдельно. То есть дополнительно к обычным проверкам. При этом в нем нет смысла проводить анализ количества вызовов, так как он не должен отличаться от работы без режима имитации. В режиме имитации имеет смысл оценить комфортность действий пользователя, замеряя время выполнения операции и по ощущениям.
Кроме того, можно провести отдельно тесты с включенным режимом низкой скорости соединения. Его не следует путать с режимом имитации серверных вызовов. Режим низкой скорости соединения изменяет поведение платформы, чтобы оптимизировать ее работу для низкоскоростных каналов. Режим имитации позволяет посмотреть, как будет себя вести система (внешне) при работе на низкоскоростном канале.
Заметим, что показатели в тонком клиенте и в веб-клиенте могут незначительно отличаться, из-за некоторых различий в используемых технологических решениях в платформе для этих двух видов клиентов. Перечисленные замеры, в общем, можно проводить в ходе разработки, используя, в том числе и файловый вариант информационной базы.
Наибольшую сложность представляет интерпретация результатов тестов. При работе системы платформа и конфигурация тесно взаимодействуют, поэтому не всегда просто понять, как конфигурация может положительно или отрицательно повлиять на конкретную ситуацию. Конечно, есть достаточно простые для анализа случаи, например, явный вызов сервера из модуля формы. Но есть и более сложное влияние, детали которого относятся к работе конкретных механизмов. Например, изменение некоторых свойств элементов формы может замедлить работу системы, так как платформа будет вынуждена получать новую информацию с сервера.
Возможной методикой анализа конкретных ситуаций может быть сравнение показателей, полученных в выбранных сценариях с использованием фрагментов конфигурации и без их использования, Например, можно попробовать, убрать, полностью модуль формы и попробовать замерить показатели в анализируемом сценарии. Это позволит понять, как бы работала платформа в этой ситуации без вмешательства конфигурации. Потом имеет смысл сравнить показатели с реально работающей конфигурацией и провести анализ по выявленным отклонениям.
Анализ серверных вызовов в коде модулей, можно, разумеется, выполнять с помощью режима замера производительности в конфигураторе 1С. Однако, нужно учитывать, что этот режим показывает только вызовы, которые выполняются непосредственно в ходе выполнения модулей и не показывает вызовы, которые выполняются платформой вне выполнения модулей.
На эффективность работы конфигурации может повлиять не только код модулей, но и различные настройки, задаваемые в свойствах формы. Поэтому в качестве дополнительной методики анализа можно использовать сопоставление конкретных показателей с аналогичным показателям на некоторой тестовой конфигурации, в которой не вносится никаких специфических настроек, а используются такие же возможности платформы, но с настройками по умолчанию.
Другой методикой может являться фиксация в виде нормативного документа некоторых показателей для самых критичных сценариев и анализ изменения этих показателей по мере развития конфигурации.
Действия по ускорению 1С
Разумеется, эти методики позволяют найти только «подозрительные» места и возможные участки для оптимизации
Проведя интерпретацию результатов тестов можно переходить к выработке решений по оптимизации. При оптимизации следует ориентироваться на минимизацию количества вызовов и снижение объема передаваемых данных, Для этого используются различные методики: объединение нескольких вызовов в один вызов, исключение лишних вызовов, применение функций повторно используемых возвращаемое значение и т.д.. Способы оптимизации зависят от конкретных механизмов и описываются в других материалах. Рекомендуется исходить из подхода: «Можно ли обойтись в этом действии без этого вызова и можно ли обойтись без передачи этого объема информации?». При этом очевидно, что структура кода конфигурации должна будет быть обусловлена не прикладными соображениями, а соображениями клиент-серверного взаимодействия. Например, с точки зрения разделения функциональности на части можно было бы при запуске конфигурации выполнять вызовы сервера для получения некоторых начальных данных, требуемых клиенту, отдельно по каждой подсистеме, Но, исходя из особенности клиент-серверной разработки, необходимо реализовать получение необходимой информации в одном вызове.
Разумеется, в случаях, когда цели оптимизации (количество вызовов, объем данных) вступают в противоречие нужно искать компромисс, В качестве способа определения возможного компромисса (выбора оптимального решения) может выступать уже непосредственно замер времени выполнения операций, Но для этого замера нужно организовать уже более реалистичный стенд, включающий оборудование, с которым будет эксплуатироваться система, веб-сервера, клиент-серверный вариант.
К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.
programmist1s.ru
Основы оптимизации запросов 1С | Всё о программировании на 1С:Предприятие
Программа очень медленно работает, невозможно дождаться проведения документа или открытия записи? Счета-фактуры и акты формируются по часу? Непорядок! Не хватает руки мастера 1С. Хорошо если ваш супер программист просто в отпуске, скоро вернётся и исправит ситуацию, но что делать тем компаниях, штатное расписание которых не предполагает наличия программиста? Тут варианта два: либо продолжать мучиться в ожидании проведения каждого документа (честно говоря, совсем не вариант), либо пригласить программиста по 1С со стороны. Чем он может помочь? Прежде всего специалист проведёт анализ программы на предмет правильности написанного кода и запросов, именно оптимизация 1С кода позволяет увеличить быстродействие системы.
Общие правила оптимизации 1С кода
Не нужно переписывать всю программу или пытаться исправить то, что на первый взгляд вам не очень нравится. На самом деле необходимо найти те самые пресловутые 20% неэффективности, которые ведут к столько плачевным результатам. Нужно точно знать, что именно требует оптимизации в 1С.
Что требует оптимизации в обязательном порядке?
Существует небольшой перечень проблем, которые требуют выявления и исправления в первую очередь, если программа медленно работает.
- Большая вложенность подзапросов.
1С сделал очень удобным функционал вложенных подзапросов и их соединения. Поэтому их часто используют нерационально. Они необходимы, если надо сделать поэтапно сложные вычисления, из-за этого частенько можно встретить такие конструкции:
Но тут не учтён тот факт, что оптимизатор сервера, какую бы СУБД вы не применяли, не во всех случаях имеет возможность грамотно оптимизировать указанный вариант запроса. Результатом будет очень низкое быстродействие при его обработке системой. Обратите внимание, загрузка сервера при обработке в пределах нормы. Вывод: коды 1С требуют оптимизации.
Как оптимизировать большую вложенность подзапросов и их соединения?
Все просто: нужно исправить сам запрос, отказаться от имеющейся конструкции, создать несколько самостоятельных подзапросов, результаты их работы зафиксировать в базе данных временных таблиц.
Алгоритм оптимизации:
Ищем самый проблемный запрос ? Получаем текст запроса на встроенном языке 1С ? Дублируем ситуации через функционал Консоли запросов ?Анализируем текст запроса
Вот такие конструкции нужно переписать?
Нужно использовать эффективность временных таблиц, получим следующее:
Созданную временную таблицу помещаем в основной запрос:
Если нужно выполнить объединение запросов в единый пакетный запрос.
Как оценить результат оптимизации кода 1С?
Проверяем скорость выполнения запроса. Если и сейчас скорость не соответствует желаемой, продолжаем анализ и упрощение.
- Выявленные несоответствия между индексами и значимыми условиями запросов.
Если СУБД медленно выполняет запрос возможно, что индексы подходят не ко всем условиям имеющихся в базе данных запросов. Поэтому нужно сопоставить индексы и условия. Условия применяются в следующих секциях:
Каждому условию соответствует свой индекс. Идеальный индекс тот, для которого в обязательном порядке выполняются следующие значимые условия:
- Индекс содержит все поля, перечисленные в условии;
- Эти поля находятся в самом начале индекса;
- Эти поля идут подряд, т.е. между ними не «вклиниваются» поля, не участвующие в условиях запроса;
- Запрос не выбирает других полей, кроме тех, которые содержатся в самом индексе. Это требование не является обязательным в том случае, если выбранный индекс является кластерным.
- Недопустимое для быстродействие манипулирование параметрами виртуальных таблиц.
Пример неэффективного использования:
Оптимизированный вариант:
- Неиспользование «ВЫРАЗИТЬ» при введении полей, имеющих составной тип.
Введение «ВЫРАЗИТЬ» исключает соединение таблиц, это попросту больше не нужно.
- Лишние поля через символ «.».
Пример: если сделать запрос так, то при его исполнении создастся лишнее левое соединение с таблицей «Контрагенты».
Нужно переписать вот так:
Для более подробного изучения оптимизации запросов и кода 1С, дополнительно советую скачать и изучить вот это руководство.
Нравится статья? Подпишитесь прямо сейчас и получайте обновления на свой E-Mail:
Мой мир
Вконтакте
Одноклассники
Google+
Похожее
Распечатать статьюlife1c.ru
Оптимизация и ускорение 1С - делаем сами
Со временем многие пользователи 1С замечают, что система начинает работать медленнее и все чаще «глючит» даже при использовании типовых конфигураций «из коробки».
Основные жалобы, отмечаемые пользователями:
«1С:БУХГАЛТЕРИЯ 8» С БЕСПЛАТНЫМИ СЕРВИСАМИ НА 12 МЕСЯЦЕВ ЗА 3000 РУБЛЕЙ И КЭШБЭК 20%
• Стали медленно проводиться документы
• Отчеты слишком долго формируются
• Программа чаще зависает
Знакомые жалобы, не так ли?
Попробуем разобраться в основных факторах снижения быстродействия и найти решения.
Устаревшее оборудование
В первую очередь исключим вероятность аппаратных проблем.
Для этого необходимо проверить требования к железу, предъявляемые 1С 8.3
Это можно сделать на официальном сайте http://1c.ru/rus/products/1c/predpr/compat/hard/demand.htm
Неактуальная платформа
Некоторые пользователи не любят лишний раз обновлять конфигурацию, считая, что ранние версии работают стабильнее. Увы, такой консерватизм может сыграть во вред: разработчики регулярно обновляют платформу, исправляя ошибки в коде и оптимизируя механизмы, поэтому использование устаревшей версии (со значительным отставанием в релизах) может негативно сказаться на быстродействии.
Низкая производительность сервера
Увеличить работоспособность возможно редактированием настроек серверов SQL и 1С:Предприятие.
Для этого в BIOS выключаем все опции по экономии питания процессора и устанавливаем производительность на максимум. Это удобно делать, например, через утилиту PowerSchemeEd.
Сервисы, которые редко используются, желательно отключить. К таким службам можно отнести FullText Search и Integration Services
Не забываем установить на максимум количество памяти, которое отведено серверу. Это требуется, чтобы SQL-сервер заранее успевал отчистить память, контролируя заполнение.
Как вариант, возможно переключить службу 1С в режим отладки. Благодаря этому дополнительно увеличивается оптимизация 1С.
Большая база данных
По мере работы любая база со временем увеличивается в объеме. Поэтому не стоит забывать про регулярное профилактическое обслуживание системы. Это удобно сделать стандартным средством "Тестирование и исправление информационной базы".
Данный инструмент поможет оптимизировать БД путем реструктуризации и реиндексации. Чтобы воспользоваться обработкой требуется в режиме конфигуратора. Обработка выглядит следующим образом:
Некорректная настройка фоновых и регламентных заданий
Для максимальной отклика СУБД рекомендуется внести изменения в настройки фоновых заданий следующие условия:
Дефрагментация индексов и обновление статистики желательно проводить в ежедневном режиме, потому что при понижении фрагментированности индексов значительно снижается оптимизация 1С.
С такой же периодичностью желательно дефрагментировать и обновлять статистику. Операция делается быстро, для ее выполнения не нужно отключать активных пользователей, а эффективное ускорение 1С от использования – доказано.
Полная реиндексация проводится при блокировке базы данных. Это более длительный процесс, но его необходимо проводить не реже чем раз в неделю в сочетании с дефрагментацией и обновлением статистики.
Некорректное взаимодействие с другим ПО
Помимо этого проблема быстродействия 1С:Предприятия может быть связана с другим предустановленным программным обеспечением.
Чаще всего это антивирусы с неправильными настройками. Соответственно для обеспечения корректной работы 1С требуется проверить настройки используемого антивируса. Например, для «Касперский» настройки указаны на официальном сайте https://support.kaspersky.ru/general/compatibility/11683
Нестабильный канал связи
Чаще всего эта проблема актуально при работе в 1С через WEB-интерфейс или удаленный рабочий стол. Если в компании используется удаленный доступ, то обязательно надо проверить работоспособность канала связи.
Ускорение 1С в пользовательском режиме
К счастью, в современных поставках оптимизация и ускорение 1С осуществляются и в рамках пользовательского режима.
На вкладке «Поддержка и обслуживание» (Раздел «Администрирование») доступен широкий перечень функций, увеличивающих ускорение 1С:
• Отключение автоматического запуска неиспользуемых регламентных заданий;
• Выключение полнотекстового поиска;
• Свертка БД за предыдущий период;
• Удаление помеченных объектов;
Оптимизация 1С
Разумеется, оптимизация и ускорение 1С достигаются не только указанными способами, поэтому перечень советов не является панацеей, а может дать лишь общее представление о возможности налаживания работы.
Зачастую, проблемы базы данных требуют привлечения квалифицированных специалистов, поэтому вы всегда можете обратиться за консультацией к нам.
Обсудить статью на 1С форуме?
1s-programmist-expert.ru
Оптимизация работы программы 1С
Вопрос оптимизации и ускорения работы 1С интересует специалистов крупных компаний, которые уже сталкнулись с проблемами в работе программы, выраженные следующим образом:
СИМПТОМЫ
- медленно проводятся документы- долго формируются отчеты- пользователи блокируют работу друг друга- зависание программы- длительное выполнение регламентных операций: перепроведение, удаление, закрытие периода
ПРИЧИНЫ
- несоответствие рабочих машин выполняемым задачам- неправильный выбор базы данных- устаревшая платформа 1С- выполнение фоновых заданий- выполнение обменами данных РИБ- огромная база данных- большое количество активных пользователей- ошибки в программном коде 1С- некорректная работа другого программного обеспечения- нестабильный канал связи Интернет
Теперь подробнее о каждой из проблем в отдельности.
Когда мы говорим о корпоративной информационной системе, мы должны понимать, что сотрудники компании проводят основную часть своего рабочего времени именно именно в 1С, потому что она решает 90 % задач учета хозяйственной деятельности. Принимая во внимание этот факт, нужно быть готовым к тому, что программа 1С, которая в своих разных модификациях (конфигурациях) является корпоративной информационной системой будет нагружена обработкой информации, и тем больше, чем больше людей одновременно в ней работают. Если говорить «о железе», то неразумно размещать базу данных 1С на компьютере с 4 Гб ОЗУ, к которому по сети будут подключены 20-30 пользователей. То есть, если мы говорим о задачах организации работы одного локального офиса на 20-30 человек (торговая компания) то компьютер (сервер) с базой данных 1С должен быть примерно 20 * 250 Мб (один сеанс) = 5 Гб. С учетом временного роста базы данных и ресурсов на обработку информации нужно будет больше и больше. С ежегодным приростом базы данных 1С в среднем на 20 % должен быть запас на 3-5 лет дополнительных 3-5 Гб ОЗУ. По итогу оптимальный объем ОЗУ на 20-30 пользователей 8-10 Гб. Кроме ОЗУ, в целом центральный компьютер (сервер) должен соответствовать вызовам времени. Полная же необходимая техническая характеристика ПК (сервера) может быть составлена лишь с учетом всех реалий компании и перспектив.
Файловая база данных 1С с 20-30 пользователями хорошо выполняет свои задачи. Рост числа пользователей к отметке 30 и более может затруднить работу КИС. В данном случае правомерным будет переход на клиент-серверную систему работы. Дополнительных трат в связи с переходом, конечно не избежать, но если вы растете, должна и расти система.
Программа 1С должна быть обновляема. Да, все мы знаем, что производители программного продукта в новых релизах исправляют старые ошибки и допускают новые. Увы, это так. Но все же, мы рекомендуем идти в ногу со временем с максимальным отставанием в 2-3 релиза платформы.
1С достаточно продуманная программа и позволяет часть необходимых операций выполнять в фоновом режиме (автоматически). Программа берет на себя часть рутинных операций но также и отбирает часть производительности. И естественно нежелательно отбирать производительность во время активных часов работы пользователей. Для этого администраторы 1С должны настроить выполнение регламентных и фоновых заданий в максимально свободное время, например, ночью. Сделать это можно с помощью «Консоли заданий», которая поставляется как внешняя обработка на дисках ИТС.
Технологии обмена данными с помощью системы РИБ уже не так актуальны, как еще 5-10 лет назад, но все же, некоторые организации этим обменам еще пользуются, чтобы обеспечить локальную работу филиалов в случае обрыва связи. Рекомендуем операции по выгрузке и загрузке файлов обмена РИБ также как фоновые задания производить ночью. Известно, что при загрузке и выгрузке файлов РИБ информационная база полностью блокируется для внесения информации.
Рост базы данных неизбежен по мере накопления в ней информации. Ваша база данных может вырасти до неприличных размеров. Неприличными мы считаем 50 и более Гб. Это может произойти как по вашей вине, так и естественным образом. Например, мы можете отправлять из 1С электронные письма с вложениями счетов на оплату, загружать в справочник номенклатуры картинки товаров, прикреплять к документам сканкопии договоров и прочее. Все это необходимые операции, но вместе с тем вы должны понимать, что все что вы добавляете в 1С загружается именно в базу данных а не хранится где-нибудь в папке на компьютере. Поэтому если работа ваших сотрудников организована именно таким образом, что база данных «раздувается» очень сильно, тогда и позаботитесь о том, чтобы вашей базе данных не было тесно на жестких дисках и ее транзакции обрабатывало достаточное количество оперативной памяти. Рекомендации разработчиков 1С по этому вопросу такие: ОЗУ = 70 % физического объема баз данных. Не лишним будет иногда почистить старые отправленные письма с помощью групповой обработки документов и удаления помеченных объектов.
Рост компании – это хорошо. За ним еще следует рост числа активных пользователей. Сверяйте иногда часы ваших возможностей с вашими потребностями. Рекомендуем по мере роста числа пользователей раз в два года повышать производительность серверов или вообще переходить на новое оборудование.
Не Боги горшки обжигают и не они же пишут программный код. Ошибки случаются везде. Программные ошибки 1С которые допускает сама фирма «1С», как правило, вылавливаются и устраняются компанией при последующих обновлениях релизов платформ и конфигураций. Ошибка может быть не очевидной, если вы, например сами или с помощью подрядчика внесли изменения в код программы или написали какую-нибудь внешнюю обработку или отчет. В этом случае разобраться с проблемой будет намного сложнее. Однако же если вы заметили потерю производительности после каких-либо изменений в программу, рекомендуем как следует оттестировать доработки на копии базы, а рабочую базу откатить обратно на стабильно работавшую копию.
Программа 1С не совместима со всеми программами и операционными системами в мире. К тому же постоянно меняется и сама программа 1С и операционные системы. Есть, конечно, рекомендации и примеры удачных настроек, но это не гарантирует в полной мере 100% совместимость. Навсегда не может быть решено ничего, особенно в информационных технологиях. Мы бы сказали так: 10 % информационных технологий – это «баги» и «глюки», которые нужно постоянно устранять и решать. Поэтому даже рекомендации 1С иногда не работают относительно совместимости работы с другим ПО. Хороший пример 1С и СУБД Postgree.
Есть одно заблуждение, которое некоторые пользователи ставят в вину программе 1С. Мы говорим о нестабильном канале связи Интернет. Например, если в компании развернута система удаленного доступа к 1С через WEB-интерфейс или удаленные рабочие столы со слабым каналом связи, то складывается впечатление, что 1С притормаживает. Нет. На самом деле притормаживает отображение экрана. Т.е. канал связи плохой и из-за этого информация на экране отображается с запозданием. Конечно же, это не ошибка 1С.Мы не описали всех возможных ситуаций, влияющих на производительность и стабильность работы программы 1С. Это невозможно в силу индивидуальности информационных архитектур каждой конкретной компании. Но проанализировав описанные выше факторы, в большей мере влияющие на работу программы 1С, вы сможете в достаточной мере оптимизировать работу программы и пользователей и выйти на стабильный уровень.
1c-servise.ru