Тормозит 1С 8.3 — что делать? Как ускорить 1С за 3 минуты. Оптимизация работы 1с
Почему тормозит 1С 8.3? Файловый режим.
К нам часто приходят вопросы про то что тормозит 1с, особенно при переходе на версию 1с 8.3, благодоря нашим коллегам из ООО "Интерфейс", мы подробно рассказываем:
В наших прошлых публикациях мы уже касались влияния производительности дисковой подсистемы на скорость работы 1С, однако данное исследование касалось локального использования приложения на отдельном ПК или терминальном сервере. В тоже время большинство небольших внедрений предполагают работу с файловой базой по сети, где в качестве сервера используется один из пользовательских ПК, либо выделенный файловый сервер на базе обычного, чаще всего также недорогого, компьютера.
Небольшое исследование русскоязычных ресурсов по 1С показало, что данный вопрос старательно обходится стороной, в случае возникновения проблем обычно советуется переход к клиент-серверному или терминальному режиму. А также практически общепринятым стало мнение, что конфигурации на управляемом приложении работают значительно медленнее обычных. Как правило аргументы приводятся "железные": "вот Бухгалтерия 2.0 просто летала, а "тройка" еле шевелится", безусловно, для истины в этих словах есть, поэтому попробуем разобраться.
Потребление ресурсов, первый взгляд
Перед тем, как начать это исследование, мы поставили перед собой две задачи: выяснить, действительно ли конфигурации на основе управляемого приложения медленнее обычных и какие именно ресурсы оказывают первоочередное влияние на производительность.
Для тестирования мы взяли две виртуальные машины под управлением Windows Server 2012 R2 и Windows 8.1 соответственно, выделив им по 2 ядра хостового Core i5-4670 и 2 ГБ оперативной памяти, что соответствует примерно средней офисной машине. Сервер разместили на RAID 0 массиве из двух WD Se, а клиент на аналогичном массиве из дисков общего назначения.
В качестве подопытных баз мы выбрали несколько конфигураций Бухгалтерии 2.0, релиза 2.0.64.12, которую затем обновили до 3.0.38.52, все конфигурации запускались на платформе 8.3.5.1443.
Первое, что обращает на себя внимание, это выросший размер информационной базы "тройки", причем существенно выросший, а также гораздо большие аппетиты к оперативной памяти:
Мы уже готовы услышать привычное: "да чего они там такого добавили в эту тройку", но давайте не будем спешить. В отличие от пользователей клиент-серверных версий, которые требуют наличия более-менее квалифицированного администратора, пользователи файловых версий крайне редко задумываются об обслуживании баз. Также редко об этом думают обслуживающие (читай - обновляющие) эти базы сотрудники специализированных фирм.
Между тем информационная база 1С - это полноценная СУБД своего формата, которая тоже требует обслуживания и для этого даже есть инструмент, который называется Тестирование и исправление информационной базы. Возможно злую шутку сыграло название, которое как-бы подразумевает, что это инструмент для устранения проблем, но низкая производительность - тоже проблема, а реструктуризация и реиндексация, вместе со сжатием таблиц - хорошо известные любому администратору СУБД средства оптимизации баз данных. Проверим?
После применения выбранных действий база резко "похудела", став даже меньше "двойки", которую тоже никто никогда не оптимизировал, также немного уменьшилось потребление ОЗУ.
В последствии, после загрузки новых классификаторов и справочников, создания индексов и т.п. размер базы вырастет, в целом базы "тройки" больше баз "двойки". Однако более важно не это, если вторая версия довольствовалась 150-200 МБ оперативной памяти, то новой редакции нужно уже полгигабайта и из этого значения следует исходить, планируя необходимые ресурсы для работы с программой.
Сеть
Пропускная способность сети - один наиболее важных параметров для сетевых приложений, особенно, как 1С в файловом режиме, перемещающих по сети значительные объемы данных. Большинство сетей небольших предприятий построены на базе недорогого 100 Мбит/с оборудования, поэтому мы начали тестирование именно со сравнения показателей производительности 1С в сетях 100 Мбит/с и 1 Гбит/с.
Что происходит при запуске файловой базы 1С по сети? Клиент скачивает во временные папки достаточно большое количество информации, особенно если это первый, "холодный", запуск. На 100 Мбит/с мы ожидаемо упремся в ширину канала и загрузка может занять значительное время, в нашем случае около 40 секунд (цена деления графика - 4 сек).
Второй запуск происходит быстрее, так как часть данных сохраняется в кэше и находится там до перезагрузки. Переход на гигабитную сеть способен значительно ускорить загрузку программы, как "холодный", так и "горячий", причем соотношение значений при этом соблюдается. Поэтому мы решили выразить результат в относительных значениях, взяв за 100% самое большое значение каждого замера:
Как можно заметить из графиков, Бухгалтерия 2.0 загружается при любой скорости сети вдвое быстрее, переход со 100 Мбит/с на 1 Гбит/с позволяет ускорить время загрузки в четыре раза. Разницы между оптимизированной и неоптимизированной базами "тройки" в данном режиме не наблюдается.
Также мы проверили влияние скорости сети на работу в тяжелых режимах, например, при групповом перепроведении. Результат также выражен в относительных значениях:
Здесь уже интереснее, оптимизированная база "тройки" в 100 Мбит/с сети работает с такой же скоростью, как и "двойка", а неоптимизированная показывает вдвое худший результат. На гигабите соотношения сохраняются, неоптимизированная "тройка" также вдвое медленнее "двойки", а оптимизированная отстает на треть. Также переход на 1 Гбит/с позволяет сократить время проведения в три раза для редакции 2.0 и в два раза для 3.0.
Для того, чтобы оценить влияние скорости сети на повседневную работу мы воспользовались Замером производительности, выполнив в каждой базе последовательность заранее предопределенных действий.
Собственно, для повседневных задач пропускная способность сети не является узким местом, неоптимизированная "тройка" всего лишь на 20% медленнее двойки, а после оптимизации оказывается примерно настолько же быстрее - сказываются преимущества работы в режиме тонкого клиента. Переход на 1 Гбит/с не дает оптимизированной базе никаких преимуществ, а неоптимизированная и двойка начинают работать быстрее, показывая небольшую разницу между собой.
Из проведенных тестов становится очевидно, что сеть не является узким местом для новых конфигураций, а управляемое приложение работает даже быстрее обычного. Также можно рекомендовать переход на 1 Гбит/с если для вас критичны тяжелые задачи и скорость загрузки баз, в остальных случаях новые конфигурации позволяют эффективно работать даже в медленных 100 Мбит/с сетях.
Так почему же 1С тормозит? Будем разбираться дальше.
Дисковая подсистема сервера и SSD
В прошлом материале мы добились увеличения производительности 1С разместив базы на SSD. Возможно недостаточно производительности дисковой подсистемы сервера? Мы сделали замеры производительности дисковой сервера во время группового проведения сразу в двух базах и получили довольно оптимистичный результат.
Несмотря на относительно большое количество операций ввода-вывода в секунду (IOPS) - 913, длина очереди не превысила 1,84, что для двухдискового массива очень хороший результат. Исходя из него можно сделать предположение, что зеркала из обычных дисков будет достаточно для нормальной работы 8-10 сетевых клиентов в тяжелых режимах.
Так нужен ли SSD на сервере? Лучше всего ответить на этот вопрос поможет тестирование, которое мы провели по аналогичной методике, сетевое подключение везде 1 Гбит/с, результат также выражен в относительных значениях.
Начнем со скорости загрузки базы.
Может быть кому-то и покажется удивительным, но на скорость загрузки базы SSD на сервере не влияет. Основной сдерживающий фактор здесь, как показал предыдущий тест, пропускная способность сети и производительность клиента.
Перейдем к перепроведению:
Выше мы уже отмечали, что производительности дисковой вполне достаточно даже для работы в тяжелых режимах, поэтому на скорость проведения SSD также не оказывает влияния, кроме неоптимизированной базы, которая на SSD догнала оптимизированную. Собственно, это еще раз подтверждает, что операции оптимизации упорядочивают информацию в базе данных, уменьшая количество случайных операций ввода вывода и повышая скорость доступа к ней.
На повседневных задачах картина аналогичная:
Выигрыш от SSD получает только неоптимизированная база. Вы, конечно, можете приобрести SSD, но гораздо лучше будет задуматься о своевременном обслуживании баз. Также не забывайте о дефрагментации раздела с информационными базами на сервере.
Дисковая подсистема клиента и SSD
Влияние SSD на скорость работы локально установленной 1С мы разбирали в предыдущем материале, многое из сказанного справедливо и для работы в сетевом режиме. Действительно, 1С достаточно активно использует дисковые ресурсы, в том числе и для фоновых и регламентных задач. На рисунке ниже можно видеть, как Бухгалтерия 3.0 довольно активно обращается к диску в течении порядка 40 секунд после загрузки.
Но при этом следует осознавать, что для рабочей станции где активная работа производится с одной - двумя информационными базами ресурсов производительности обычного HDD массовой серии вполне достаточно. Приобретение SSD способно ускорить некоторые процессы, но радикального ускорения в повседневной работе вы не заметите, так как, например, загрузка будет ограничиваться пропускной способностью сети.
Медленный жесткий диск способен замедлить некоторые операции, но сам по себе являться причиной торможения программы не может.
Оперативная память
Несмотря на то, что оперативка сейчас неприлично дешева, многие рабочие станции продолжают работать с тем объемом памяти, который был установлен при покупке. Вот тут и подстерегают первые проблемы. Уже исходя из того, что в среднем "тройке" требуется около 500 МБ памяти можно предположить, что общего объема оперативной памяти в 1ГБ для работы с программой будет недостаточно.
Мы уменьшили память системы до 1 Гб и запустили две информационные базы.
На первый взгляд все не так и плохо, программа поумерила аппетиты и вполне уложилась в доступную память, но не будем забывать, что потребность в оперативных данных не изменилась, так куда же они делись? Сброшены в дисковый, кэш, подкачку и т.п., суть этой операции состоит в том, что не нужные в данный момент данные отправляются из быстрой оперативной памяти, количества которой недостаточно, в медленную дисковую.
К чему это приведет? Посмотрим, как используются ресурсы системы в тяжелых операциях, например, запустим групповое перепроведение сразу в двух базах. Сначала на системе с 2 ГБ оперативной памяти:
Как видим, система активно использует сеть, для получения данных и процессор для их обработки, дисковая активность незначительна, в процессе выполнения обработки она эпизодически вырастает, но не является сдерживающим фактором.
Теперь уменьшим память до 1 ГБ:
Ситуация радикальным образом меняется, основная нагрузка теперь приходится на жесткий диск, процессор и сеть простаивают, ожидая пока система считает с диска в память нужные данные и отправит туда ненужные.
При этом даже субъективная работа с двумя открытыми базами на системе с 1 ГБ памяти оказалась крайне некомфортной, справочники и журналы открывались со значительной задержкой и активным обращением к диску. Например, открытие журнала Реализация товаров и услуг заняло около 20 секунд и сопровождалось все это время высокой дисковой активностью (выделено красной линией).
Чтобы объективно оценить влияние оперативной памяти на производительность конфигураций на основе управляемого приложения мы провели три замера: скорость загрузки первой базы, скорость загрузки второй базы и групповое перепроведение в одной из баз. Обе базы полностью идентичны и созданы копированием оптимизированной базы. Результат выражен в относительных единицах.
Результат говорит сам за себя, если время загрузки вырастает примерно на треть, что еще вполне терпимо, то время выполнения операций в базе вырастает в три раза, ни о какой комфортной работе в таких условиях говорить не приходится. Кстати, этот тот случай, когда покупка SSD способна улучшить ситуацию, но гораздо проще (и дешевле) бороться с причиной, а не с последствиями, и просто купить нужное количество оперативной памяти.
Недостаток оперативной памяти - основная причина по которой работа с новыми конфигурациями 1С оказывается некомфортной. Минимально подходящими следует считать конфигурации с 2 ГБ памяти на борту. При этом учитывайте, что в нашем случае были созданы "тепличные" условия: чистая система, запущены только 1С и диспетчер задач. В реальной жизни на рабочем компьютере как правило открыты браузер, офисный пакет, работает антивирус и т.д, и т.п., поэтому исходите из потребности 500 МБ на одну базу плюс некоторый запас, чтобы при тяжелых операциях вы не столкнулись с недостатком памяти и резким снижением производительности.
Процессор
Центральный процессор без преувеличения можно назвать сердцем компьютера, так как именно он, в конечном итоге, осуществляет обработку всех вычислений. Чтобы оценить его роль мы провели еще один набор тестов, такой же, как и для оперативной памяти, уменьшив количество доступных виртуальной машине ядер с двух до одного, при этом тест выполнялся два раза с объемами памяти в 1 ГБ и 2 ГБ.
Результат оказался довольно интересным и неожиданным, более мощный процессор довольно эффективно брал на себя нагрузку в условиях недостатка в ресурсах, в остальное время не давая каких-либо ощутимых преимуществ. 1С Предприятие сложно назвать приложением, активно использующим процессорные ресурсы, скорее нетребовательным. А в тяжелых условиях на процессор ложится нагрузка не столько по обсчету данных самого приложения, сколько обслуживания накладных расходов: дополнительных операций ввода вывода и т.п.
Выводы
Итак, почему тормозит 1С? В первую очередь это недостаток оперативной памяти, основная нагрузка в этом случае ложится на жесткий диск и процессор. А если они не блистают производительностью, как это обычно бывает в офисных конфигурациях, то получаем ситуацию, описанную в начале статьи - "двойка" работала нормально, а "тройка" безбожно тормозит.
На второе место стоит вынести производительность сети, медленный 100 Мбит/с канал способен стать реальным бутылочным горлышком, но в тоже время режим тонкого клиента способен поддерживать довольно комфортный уровень работы даже на медленных каналах.
Затем следует обратить внимание на дисковую, покупка SSD вряд ли будет хорошим вложением денег, а вот заменить диск на более современный будет не лишним. Разницу между поколениями жестких дисков можно оценить по следующему материалу: Обзор двух недорогих дисков серии Western Digital Blue 500 ГБ и 1 ТБ.
И наконец процессор. Более быстрая модель конечно же не будет лишней, но большого смысла увеличивать его производительность нет, если только данный ПК не используется для тяжелых операций: групповых обработок, тяжелых отчетов, закрытия месяца и т.п.
Надеемся данный материал поможет вам быстрее разобраться в вопросе "почему тормозит 1С" и решить его наиболее эффективно и без лишних затрат.
Источник: http://interface31.ru/tech_it/2015/04/pochemu-tormozit-1s-faylovyy-rezhi...
fadmin.ru
Максимально эффективная по скорости работы — серверная схема, для клиент-серверной 1С 8.х
ПредисловиеПостоянно сталкивался с высказываниями ИТ специалистов «сеть нагружена на 20%… процессоры на 50%… очередей к дискам мало… Значит сеть и сервера справляются… смотрите код в 1С проблемы исключительно там».
На самом деле происходило следующее ( сервер 1С и SQL разнесены на разные компьютеры): сеть практически использовалась по максимуму(эти "20% загрузки сетевого интерфейса" = «20% полезные данные» + «80% потеря на служебной обработке»). И соответственно из-за малой ширины канала обмена «полезными» данными — SQL сервер с «Сервером 1С» постоянно ожидали друг друга, что вело к малой утилизации ресурсов CPU и дисковой системы.Ведение: Сначала хочу заострить внимание на том что же такое 1С платформа?.
Итак начнем с главного 1С — построенная на ORM (объектно-реляционном отображении)-система и программист в ней работает не напрямую с реляционным представлением, а с объектами. ru.wikipedia.org/wiki/ORM
Программист в среде 1С — пишет объектную логику, а за сборку/разборку и запись объектов в «плоский вид» по таблицам базы данных отвечает сама платформа.
Основные "+" и "-" с точки зрения ORM:
"+" Программист в среде ORM получает преимущество в скорости разработки приложения из-за уменьшения количества кода и его простоты по сравнению с исключительно реляционным программным кодом (пример SQL запросы). А также освобождается от написания кода работающего непосредтсвенно с записями в таблицах Реляционной СУБД.* 1
"-" Сложности для создателей «платформ» ORM и проблемы производительности:
Использование реляционной базы данных для хранения объектно-ориентированных данных приводит к «семантическому разрыву», заставляя программистов писать программное обеспечение, которое должно уметь как обрабатывать данные в объектно-ориентированном виде, так и уметь сохранить эти данные в реляционной форме. Эта постоянная необходимость в преобразовании между двумя разными формами данных не только сильно снижает производительность, но и создает трудности для программистов, так как обе формы данных накладывают ограничения друг на друга.*1«Уточнение». Несмотря на то, что 1С 8.х позволяет работать с реляционно-подобным кодом (только чтение) в объекте 1С «Запрос» — это все-таки не напрямую один-в-один транслируемый в реляционную СУБД запрос к таблицам хранения данных, а прежде всего «Объектный запрос» — также не минующий стадию сборки разборки объектов. Поэтому зачастую вместо много-тысяче строчных «Объектных запросов» — наиболее оптимально по быстродействию кода и скорости разработки — написать объектный не ряляционно-подобный код.
Глава 1: Расмотрим модель клиент-серверной 1С 8.х
Отмечу основные «узкие» места влияющие на производительность:
1) Первое узкое место — это коммуникационная среда передачи данных. На рисунке стрелками показаны потоки обмена данными, где «красные» — это Реляционная СУБД<->Объектная СУБ, «оранжевые» — синхронизация между Объектными СУБД. Т.к. при использовании отдельных серверов для СУБД и кластеров 1С – коммуникационная среда это сетевые соединения – то существуют существенные задержки в передаче данных многочисленными мелкими порциями – как из-за латентности самой физической реализации интерфейсов, так и из-за латентности узлов в этой сети.
Рассмотрим на примере сетевого стандарта Ethernet Gigabit (график зависимости скорости передачи данных… ниже) на примере работы Сервера 1С с MS SQL (по умолчанию размер коммуникационных пакетов 4 кб):
На графике видно, что при использовании пакетов ДАННЫХ =4 кб пропускная способность рассмотренной сети всего 250 Мегабит/с. (как правильно заметили в комментария к публикаци: это не пакеты протоколов например уровня TCP, а пакеты ДАННЫХ которые генерируют приложения участвующие в обмене) …Из практики: такое разнесение на Два отдельных сервера MS SQL (сервер №1)< — Ethernet Gigabit ---> «Сервер 1С»(сервер №1) проигрывало по скорости работы платформы на 50% варианту MS SQL (сервер №1) < — Shared Memory (без сети через участок памяти) ---> «Сервер 1С»(сервер №1)… и это уже «на одном высоконагруженном пользовательском сеансе»
2) Узкое место — это количество отдельных компьютеров «кластеров 1С», чем их больше тем больше затраты на синхронизацию и как следствие уменьшение производительности системы.
3) Узкое место — количество отдельных процессов сервера 1с, чем их больше тем больше затрат на их синхронизацию… Но тут скорей всего необходимо найти «золотую середину» — для обеспечения стабильности. 2*2* «Уточнение» — для MS Windows существует такое правило: Процессы дороже чем потоки, что означает применительно к данному случаю на практике следующее: скорость обмена между двумя потоками внутри одного процесса значительно превышает, скорость обмена между потоками находящихся в разных процессах.
Поэтому например «Файловая 1С 8.х» всегда превышает по скорости однопользовательской работы платформы в клиент-серверном варианте. Все просто т.к. в случае «Файловой 1С 8.х» поток «Реляционной СУБД» общается с потоком «Объектной СУБД» внутри одного единого процесса.
4)Узкое место – одно-поточность пользовательского сеанса, т.к. каждый отдельно взятый — пользовательский сеанс не распараллеливается платформой на несколько, то его работа ограничивается использованием ресурсов одного ядра CPU => следовательно желательна максимальная скорость каждого ядра, в этом случае быстродействие платформы 1C например на 10-ядерном CPU по 1 ггц — будет значительно уступать быстродействию платформы на 4-ех ядерном CPU по 3 Ггц – естественно до определенного количества потоков.
Глава 2(Итог): Рассмотрим не масштабируемый и масштабируемый варианты — наиболее эффективных схем для платформы 1с 8.х. для OS Windows (пологаю для Linux ситуация аналогична)
1-Вариант(не масштабируемый). В расчете на 100 «высоконагруженных пользовательских сеанса»
1) эффективен обычный 2-ух сокетный сервер с 4-ех ядерными CPU по 3 Ггц.
2) быстрая дисковая система на SSD
3) MS SQL < — Shared memory --> «Сервер 1С»
2-Вариант(масштабируемый). начиная со 100 «высоконагруженных пользовательских сеанса» и далее…. Тут логичней всего пойти по пути немецкой 1с-ки «Sap HANA»)) Собирать модульный «Супер-компьютер» от фирмы SGI – состоящий из «лезвий» на 2-х сокетных материнских платах, каждое лезвие соединяется друг с другом сложной топологией сверх-быстрого интерконнекта на основе NUMA-чипов, и все находится под управлением единой OS. Т.е. программы внутри такого сервера по определению имеют доступ к ресурсам любого «лезвия».
1) добавляем «лезвия» по необходимой нагрузке… из расчета примерно одно «лезвие» на 100 пользователей.
2) быстрая дисковая система на SSD
3) MS SQL < — Shared memory --> «Сервер 1С»
habr.com
Как ускорить работу 1С 8.3
Зачастую пользователи жалуются на то, что «1С 8.3 тормозит»: медленно открываются формы документов, долго проводятся документы, запускается программа, долго формируются отчеты и так далее.
Причем такие «глюки» могут встречаться в разных программах:
Причины могут быть разные. Это не восстановлена граница последовательности проведения документов, слабый компьютер или сервер, неправильно сконфигурирован сервер 1С.
В этой статье я хочу рассмотреть одну из самых простых и распространенных причин медленной работы программы – фоновые и регламентные задания. Данная инструкция будет актуальна для пользователей файловых баз на 1-2 пользователя, где нет конкуренции за ресурсы.
Если Вас интересует более серьезная оптимизация клиент-серверного варианты работы системы, посетите раздел сайта 1С Эксперт.
Где в 1С 8.3 регламентные задания
Не успел я загрузить программу, как в 1С выполнилось множество фоновых заданий. Посмотреть их можно, зайдя в меню «Администрирование», далее -«Поддержка и обслуживание»:
Получите 267 видеоуроков по 1С бесплатно:
Вот так выглядит окно с выполненными задачами:
А так полный список всех регламентных заданий, которые запускаются:
Среди этих задач видны такие, как «Загрузка валют«, загрузка различных классификаторов, проверка актуальности версии программы и так далее. Например, мне ни к чему почти все эти задачи. Я не веду валютный учет, версии контролирую сам, классификаторы загружаю по необходимости.
Соответственно, в моих (и в большинстве случаев в Ваших) интересах отключить ненужные задачи.
Отключение регламентных и фоновых заданий в 1С 8.3
Рассмотрим, как отключить регламентные фоновые операции. Включенные задачи отмечены зеленым флажком. Зайдем в одну из них двойным кликом. Например, в «Загрузку классификаторов банков«:
Чтобы отключить задание, снимем флажок «Включено». Нажимаем «Записать и закрыть». Теперь оно выполняться не будет. Таким образом нужно отключить все ненужные задачи. Если сомневаетесь насчет какого-либо задания, обратитесь к специалисту. Производительность программы должна значительно увеличиться.
Если база данных находится на сервере, специалистам по обслуживанию системы необходимо помнить, что при обновлении нужно принудительно отключать фоновые задания на сервере 1С: Предприятие, так как они будут мешать процедуре обновления.
К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.
programmist1s.ru
Оптимизация и ускорение работы 1с
Оптимизация и ускорение работы 1с
Множество организаций находящихся на территории России пользуются программой 1с предприятие. Многие компании создают базы с большим количеством данных и работа с этой информации очень важна для организации. От этих данных зависит прибыльность организации и общая скорость работы. Постоянные ошибки и перебои в работе могут практически полностью остановить деятельность организации и этим привести к необратимым последствиям.
Из-за чего программа 1с работает медленно?
Обычно пользователи грешат на само программное обеспечение и то что 1с выпускает заведомо плохие программы, но это не так. Существует несколько причин медленной работы 1с:
- грубые технические недочеты при внедрении программы
- ошибки методологического плана при внедрении 1с
- выбор неподходящего оборудования для платформы
- неправильная работа серверов
- неквалифицированная доработка 1с
Исправление этих проблем должно привести к быстрой и надежной работе программы 1с на вашем оборудовании.
Как сделать работу программы 1с быстрее?
Для начала оптимизации вашей программы нужно произвести полный технический и методологический анализ вашей системы. После этого можно будет выявить индивидуальную схему для улучшения производительности вашего программного продукта.
Существует два способа ускорить систему 1с:
Технический:
Самый распространенный способ улучшения работы 1с. Большинство компаний имеют различные технические ошибки в своей программе и опытный программист 1с сможет быстро решить эту проблему, что значительно ускорит работу программы.
Методологический
Этот способ гораздо реже применяется, так как большинство проблем вызывает ошибки в коде программы и кривые запросы. Но если технических ошибок нет, то начинает более глубокий анализ проблем и переход к более грамотной оптимизации бизнес процессов и их упрощению, что также значительно сможет ускорить работу программы.
Если вы ищете грамотных специалистов по ускорению 1с, то советуем выбирать из известных франчайзи 1с. Выбор специалистов, которые неквалифицированные в этом вопросе, может только ухудшить работу вашей программы и привести к нужде переустановки всей платформы.
Данный материал является частной записью члена сообщества Club.CNews.Редакция CNews не несет ответственности за его содержание.
club.cnews.ru
Оптимизация скорости работы 1С: Предприятие -
Нередко пользователи 1С сталкиваются с проблемой медленного проведения документов или формирования отчетов, конфликтом блокировок при проведении документов, в случае увеличения нагрузки это может привести к полной невозможности работы с программой.
Скорость обработки данных и запросов в 1С : Предприятие зависит от многих факторов: технических данных сервера, настройки операционной системы и сервера баз данных с которым работает программный комплекс «1С: Предприятие».
В качестве сервера баз данных в промышленных системах для 1С чаще всего используется MSSQL сервер.
MS SQL Server в работе с 1С : Предприятие обеспечивает:
надежное хранение всех данных;
все операции по извлечению, внесению, удалению и модификации данных в 1С : Предприятие.
Схема работы приложений 1С : Предприятие представлена на рисунке:
Как решается проблема “в лоб”. Вкладываются деньги в модернизацию серверов(сервера приложений и сервера баз данных), на которых работает 1С. Это помогает на какое-то время, но с ростом объема обрабатываемых данных аппаратных ресурсов снова не хватает.
Как же минимизировать простои информационной системы на базе 1С и соблюсти SLA(соглашение об уровне сервиса) по обеспечению доступности и надежности работы системы на базе 1С?
Хорошие результаты приносит работа по тонкой настройке сервера баз данных и оптимизация программного кода 1С.
Какие методы применяются компанией РИДОС для выявления проблем производительности:
централизованный и автоматизированный сбор статистики, относящейся к работе оборудования;
определение узких мест существующей конфигурации и неиспользуемых в настоящее время ресурсов;
перераспределение существующих ресурсов с целью оптимальной утилизации имеющихся ресурсов;
постоянный анализ статистики для отслеживания характера изменений, чтобы не отстать от развития компании.
централизованный и автоматизированный сбор статистики, относящейся к работе ОС, SQL Server и 1С : Предприятие;
определение и оптимизация сеансов и отчетов, вносящих наибольший вклад в общую нагрузку на систему;
тонкая настройка системы под изменяющиеся требования компании.
Примеры оптимизации и переопредиления применяемые в решении «РиДОС: Оптимизация скорости работы 1С : Предприятие»
Ниже приведены ряд примеров из практики специалистов РИДОС по оптимизации работы систем на базе 1С Предприятие.
Отметим, что конкретное решение по включению той или иной настройки применяется только после анализа специалистами нагрузки на программно-аппаратный комплекс и не может применяться в общем случае.
1. Анализ статистики времени ожидания задачами SQL Server
Время ожидания – это время до выполнения задачи, которое SQL Server был вынужден ждать от системы, вместо того, чтобы выполнять свою работу, т.е. это по своей сути время простоя.
Было:
Почти 90% времени тратилось на простои, связанные с разделением выполнения запросов по нескольким ядрам процессора и объединением распараллеленных потоков в один, что помимо прочего создавало большую нагрузку на процессор и оказалось в целом неэффективно для данного характера нагрузки.
Распараллеливание нагрузки:
Примененное решение:
Отключение распараллеливания нагрузки по нескольким ядрам процессора
По результатам анализа перенастроили SQL Server, запретив ему распараллеливать запросы
Стало:
Показатели времени ожидания без распараллеливания нагрузки
82% времени ожидания относится к внутренним процессам SQL Server (обведены зеленым), которые и должны простаивать как можно больше (именно поэтому LAZYWRITER и называется LAZY).
При этом задачи связанные с полезной работой SQL Server (обведены синим) тратят на простои суммарно примерно 15% от общего времени ожидания.
«Побочный» эффект анализа времени ожидания в SQL Server дал еще один положительный результат, изменилась нагрузка на ЦПУ после перенастройки:
2. Анализ и изменение долго выполняющихся запросов.
Алгоритм нахождения долго выполняющихся запросов:
трассировка запросов средствами SQL Server;
сопоставление долго выполняющихся запросов с сеансами и отчетами 1С : Предприятие.
Пути оптимизации долго выполняющихся запросов:
изменение запросов внутри 1С : Предприятие
создание составных индексов средствами SQL Server и 1С : Предприятие
2.1 Пример оптимизации отчета 1С средствами MSSQL
Запрос выполнялся 235,5 секунд.
После переписывания кода 1С и оптимизации запроса запрос стал выполняться за 77 секунд, т.е. примерно в 3 раза быстрее.
2.2 Следующий шаг оптимизации данного запроса
— изменение логики и создание дополнительных индексов привел к результату в 36-40 секунд времени выполнения, т.е. быстрее в 6-6,5 раз по сравнению с первоначальным вариантом.
Ждем ваших обращений! И, конечно же, будем рады ответить на ваши вопросы! Их вы можете задать, воспользовавшись формой ниже, или по телефону: +7 499 110-35-26
ridos-consulting.ru
Медленно работает 1С или как ускорить работу 1С | Gilev.ru
Почему 1С Предприятие 8 работает медленно?
На скорость работы 1С Предприятие 8 влияет большое количество возможных причин:
- низкая скорость работы оборудования, неправильное размещение данных — для небольших компаний (особенно если режим файловый) часто бывает возможность решить большинство проблем просто «залив» их более мощным оборудованием;
- пренебрежение администратора к своим обязанностям по обслуживанию системы и настройке регламентных процедур — тут дефрагментация дисков, некорректная настройка сети, использования антивирусов и файрволов, не выполнение процедур на субд по обновлению индексов и статистики и т.д.далеко не всегда получается решить такие проблемы повышением квалификации, иногда помогает только смена специалиста;
- безответственное отношение программистов к использованию устаревших версий платформ или режимов совместимости, так как показано в статье http://www.gilev.ru/non_8_2_13/ в платформе проводится большая работа, и новые механизмы работают значительно быстрее, однако не используются программистами, которые обслуживают информационную систему;
- ошибки в коде еще одна причина, это и понятно, программы пишутся людьми, а людям свойственно допускать ошибки — не оптимальные алгоритмы вносят значительный вклад в замедление 1С. Решение данной проблемы потребует привлечения специалистов, которые проведут анализ системы (произведут замер производительности) и предложат меры по оптимизации программного кода;
- слишком большой размер базы данных тоже замедляет работы — популярный у маркетологов термин Big Data обозначающий обработку больших объемов данных на самом деле является следствием несоответствия оборудования объему обрабатываемых данных, и не надо боятся переноса устаревших данных в архивную копию. Но если Вам нужные все данные наши команда поможет вам реорганизовать данные внутри базы и значительно повысить скорость работы;
- пренебрежение такими процедурами как «Тестирование и исправление» базы 1С, очисткой журналов истории действий пользователей, очисткой настроек пользователей (особенно которые уже уволились и не используются), различных кэшей также приводит к снижению скорости программы;
- еще одна причина это неправильная настройка ключей защиты 1С, например в файле конфигурирования системы защиты 1С (nethasp.ini) указан путь к ключу на несуществующий компьютер или в большой локальной сети совсем не указан путь к ключу, вследствие чего программа может тратить много времени на поиск ключа защиты;
- большое время отклика по сети между клиентом 1С и сервером 1С не всегда, но часто может тоже замедлять систему, смена парадигмы программирования с использованием управляемого клиента для «старых» конфигураций является неплохим подходом или в некоторых случаях использованием терминального сервера;
Для того чтобы разобраться самостоятельно в причинах в вашей системе вы можете пройти наши курсы http://www.gilev.ru/kurs/ или воспользоваться нашими услугами http://www.gilev.ru/kod1c/
www.gilev.ru
Увеличение скорости работы 1С
С выходом на рынок 1С:Предприятие версии 8.2 начался прорыв фирмы «1С» на корпоративный рынок информационных систем.
Сегодня никого не удивишь внедрениями программных продуктов фирмы «1С» для числа пользователей более 500 в одной информационной базе и все чаще появляются сведения об успешных внедрениях 1С для количества пользователей несколько тысяч.
Крупные внедрения требуют большего уровня квалификации для специалистов, осуществляющих проектные работы. Частая проблема, возникающая на подобных проектах – скорость работы 1С не устраивает пользователей, возникают ошибки, связанные с работой платформы. Сразу, либо спустя несколько месяцев работы пользователи могут обнаружить, что программа начинает работать плохо:
- Отчеты формируются долго
- Проведение документов зависает и может закончиться ошибкой «Конфликт блокировок при выполнении транзакции»
- Работа пользователей завершается аварийно
Опыт крупных внедрений показывает:
- Проблемы стабильности и скорости работы 1С всегда могут быть решены
- Решение проблем производительности (оптимизация) 1С – узкая, специфическая область знаний
- Задачи оптимизации производительности актуальны на крупных внедрениях ERP-систем разных вендоров: 1С, SAP, Microsoft Dynamix, Oracle ERP и др.
Оптимизация работы 1С:Предприятие наиболее актуальна для информационных систем с большим числом пользователей (сотни и тысячи), а также для исформационных систем, критичных к времени простоя. Низкая скорость работы учетной системы или частые ошибки у пользователей могут вылиться в существенные издержки компании: оплачиваемые “вхолостую” человекочасы, потерянные клиенты, пени и штрафы.
Увеличение скорости работы учетной системы для таких систем является одним из способов существенно сократить издержки за счет увеличения оперативности ввода и обработки данных, а также повысить эффективность принятия решений за счет более оперативного получения ключевых для бизнеса данных.
Почему же медленно работает 1С? Почему могут возникать проблемы стабильной работы 1С? В каких случаях требуется оптимизация 1С:Предприятие?
Разработчики фирмы «1С» прилагают много усилий для улучшения качества работы своих решений. Часто проблемы проблемы производительности типовых решений бывают вызваны неоптимальными настройками программы (чаще всего задействована избыточная функциональность), недостаточной производительностью оборудования, невыполнением регламентных операций на уровне СУБД, а также различными проблемами, вызванными на уровне программно-аппаратного взаимодействия.
Однако у нас есть опыт ускорения в несколько раз отдельных ключевых алгоритмов УПП, УТ, 1С:Бухгалтерии, ЗУП, 1С:Документооборот и др. за счет переработки программного кода типовых конфигураций.
Ситуация меняется, если мы рассмотрим программные продукты фирмы «1С», доработанные под нужды конкретного предприятия, либо самостоятельные разработки на базе 1С:Предприятие. Практика показывает, что в этом случае наибольшее число проблем скорости работы 1С связано с внесением доработок в продукты фирмы «1С» сторонними специалистами или не оптимально спроектированной архитектурой самостоятельных разработок.
Несколько реже встречаются проблемы недостаточной производительности оборудования – недостаточно вычислительной мощности или неоптимальные настройки железа.
Далее по частоте возникновения - настройки и процедуры обслуживания СУБД, настройки ОС, проблемы взаимодействия ПО.
Распространенная ошибка на этапе внедрения крупных систем - не проведено или проведено не корректно нагрузочное тестирование внедряемой системы. Как следствие, могут быть не верно расчитаны характеристики серверного оборудования, узкие места программного кода могут быть не выявлены до ввода системы в промышленную эксплуатацию, что в итоге выльется в существенно большие затраты в дальнейшем.
В общем случае наша методика оптимизации 1С:Предприятие предполагает следующие шаги:
- Определение целевых показателей производительности для выбранного списка ключевых операций.
- Анализ (аудит) информационной системы с целью поиска узких мест быстродействия
- Ранжирование узких мест системы, определение наиболее приоритетных
- Разработка плана действий по устранению высокоприоритетных узких мест, например:
- реинжениринг кода и архитектуры данных
- апгрейд оборудования
- тюнинг настроек СУБД, сервера приложений, ОС
- пересмотр методологии отдельных бизнес-процессов
- Выполнение работ по оптимизации 1С нашими экспертами или специалистами заказчика под нашим руководством
- Контроль достижения целевых показателей производительности по методике APDEX
- Повторный цикл оптимизации 1С, если целевые показатели не достигнуты
Наша команда успешно выполнила несколько десятков проектов по оптимизации скорости и стабильности 1С:Предприятия, что позволило нам наработать обширный опыт, методики и инструментарий в этой области.
Общая скорость работы учетной системы по результатам наших работ по оптимизации 1С как правило возрастает в несколько раз.
Высокий уровень наших экспертов позволил нам принять участие в нескольких проектах по оптимизации 1С:Предприятие совместно с фирмой «1С».
На главную Контакты
www.perfaudit.ru