1с низкая скорость соединения что это

Обновлено: 07.07.2024

Предположим, что программа 1С работает с замедлениями или попросту «тормозит». Как понять, в чем проблема? Куда смотреть? Как правильно определить «узкое место»?

Советы по ускорению работы 1С 8.3 в файловом режиме Советы по ускорению работы 1С 8.3 в файловом режиме

Рекомендации на основе часто встречающихся ошибок:

1. Настройки антивируса «по умолчанию» — ошибка.

Уберите каталоги с исполняемыми модулями и базами 1С из проверки либо добавьте исключения по маске, как рекомендуют специалисты. При правильной настройке — антивирусное ПО практически не мешает.

Укажите в списке исключений:

  • для 1С v7.7 — маски *.md, *.dbf, *.cdx ;
  • для 1С v8 — маску 1Cv8*.1C? (1Cv8.1CD / 1Cv8tmp.1CD / 1Cv8.1CL / 1Cv8tmp.1CL) и файлы 1Cv8.pfl и 1Cv8.log , маски *.epf, *.dt, *.cf, *.cfu ;
  • временные файлы, используемые 1С: Предприятие.

2. Режим производительности . Если нужна скорость, сделайте это обязательно на клиентских и серверных компьютерах.

Включить режим можно в 2-х местах: через BIOS ( Отключить режимы C1, C1E, Intel С-state — C2, C3,C4; перевести в значение «Disabled» ) и в настройках Windows ( «Панель управления — Электропитания — Режим «Высокая производительность» ).

Можно как угодно ругать 1С, но если пользователям нужна скорость — включайте режим высокой производительности. Пусть ПК будет больше греться, потреблять больше энергии и сильнее шуметь вентиляторами. Это плата за производительность.

3. Включите Turbo Boost , если ваш процессор поддерживает эту функцию.

Максимальный эффект от Turbo Boost проявляется, когда включены C-State. Необходимо проверить влияние параметра для вашего варианта 1С (файловый режим или клиент-сервер). Например, по тесту Гилева.

Условия активации Turbo Boost:

  • BIOS QPI L0s, L1 — « Disabled »;
  • BIOS Demand Scrubbing — « Disabled »;
  • BIOS Intel SpeedStep — « Enabled »;
  • BIOS Turbo Boost — « Enabled »;
  • Windows « Панель управления — Электропитание — Высокая производительность ».

4. Следующее важное звено — сеть .

Перед началом тестирования:

  • убедитесь, что iperf между двумя компьютерами показывает всю полосу;
  • выполнены рекомендации с сайта Гилева ;
  • скопируйте один большой файл (5-10 Гб) по локальной сети и замерьте скорость копирования.

Есть несколько способов, как задать путь к сетевой базе 1С: по имени сервера, по ip-адресу и с подключением сетевого диска (net use). Правильный вариант только один:

Не ip-адрес, а имя сервера. Если сервер не виден по имени, добавьте его в DNS или в файл hosts. Обращение к серверу должно быть по имени, а путь в клиенте 1С — через букву сетевого диска и название каталога.

5. Проверьте формат базы 1С и протестируйте версию 8.3.8 .

Выводы для файлового режима работы:

  1. Локальная сеть должна быть настроена (выполнен тюнинг), а также правильно прописан путь в 1С. Ограничением при работе нескольких (>10) пользователей уже будет выступать не сеть, тут 1 Гбит ещё хватит, а блокировки при многопользовательской работе.
  2. Платформа 1C 8.3 в разы требовательнее к грамотной настройке сети. Влиять может все: деинсталляция (а не просто отключение) антивируса, удаление лишних сетевых протоколов, смена драйверов, от физического удаления второй сетевой карты на сервере.
  3. Настройки антивирусов по умолчанию снижают производительность. Если разрешить процессу 1cv8 делать все, скорость такая же, как и без антивируса.

⚡ Подписывайтесь на канал или задавайте вопрос на сайте — постараемся помочь всеми техническими силами. Безопасной и производительной работы в Windows и 1С.

Работа нескольких пользователей по сети с одним и тем же файлом (базой данных) включает механизм сетевой блокировки. Это заставляет систему тратить драгоценное время на выявление открытых сессий записи, и соответственно разрешение конфликтов.

  • быстрая работа пользователя с базой по сети в монопольном режиме и крайне медленная - при одновременной работе нескольких пользователей
  • быстрая работа пользователя с локальной базой на сервере и медленная - по сети
  • процессор на сервере почти не занят
  • загрузка гигабитной сетевой карты меньше 5%
  • обращения к файловой системе чуть менее 10 мбайт/сек

Итак, мне досталась задача - сделать так, чтобы в 1С могли одновременно работать целых три пользователя! Смешно, не так ли?

Все шуточки я забыл, когда увидел, с чем предстоит иметь дело: "сервер" в лице обычного офисного компьютера и два ноутбука.

Счастье было бы неполным, если бы не замечательные операционные системы - на компьютере и на одном ноутбуке Windows 7, на другом - Windows 8.

При попытке одновременно провести документы на ноутбуках один тупил около минуты, а второй вылетел из 1С с текстом ошибки "не удалось заблокировать таблицу. ".

Запуск 1С на ноутбуке - это отдельное шоу, длившееся порядка 3 минут!

На многих ресурсах сталкивался с советом перейти на работу в терминальном доступе. К сожалению, Windows 7 не позволяет штатными средствами превратиться в сервер терминалов - максимум одно активное подключение. При этом остальные сеансы не прекращаются, можно переподключиться под другим пользователем - "выкинув" при этом предыдущего пользователя, но не завершив его сеанс. Поэтому следует перенести 1С на серверную ОС, где таких ограничений нет. Клиент на свой страх и риск решил проблему вместо этого с помощью сторонней утилиты Windows7_SP1_RDPhack.

Но на этом приключения не закончились. Даже в терминальном подключении остались значительные тормоза. Вновь меня выручили всемогущие поисковики. Ниже даны советы по ускорению файловой 1С, которым я последовал:

1. Отключить использование протокола сети IPv6, настроить адресацию на "старом" IPv4.

2. Добавить процессы 1С в исключения брандмауэра Windows, а также в исключения антивируса, либо отключить их вовсе (более рискованно, но простой тест показал увеличение скорости перепроведения документов при отключенном антивирусе Avast в разы!)

3. Запустить индексацию полнотекстового поиска в 1С либо выключить его вовсе

4. Запустить Тестирование и исправление базы, проверку утилитой ChDbfl

5. Запустить в конфигурации пункт Проверка конфигурации (если конфигурация не типовая, это может быть полезным). По результатам проверки конфигурации она волшебным образом уменьшилась в размерах почти на треть. Что уж и как до меня обновляли приходящие программисты - особо не вникал, но факт налицо.

6. Отключить ненужные функциональные опции.

7. Настроить права пользователям. (Этот и предыдущий советы показались глупостью, до тех пор, пока я не понаблюдал за отрисовкой управляемых форм при открытии списка документов. Чем меньше лишнего в управляемом интерфейсе - тем , как правило, быстрее он работает)

8. Запустить пересчет итогов и восстановление последовательности (значительный прирост может быть только в случае, если долгое время итоги не восстанавливались)

9. Указать "Скорость соединения - низкая" в настройках списка баз (это особого результата не дало, разве что отключились картинки у подсистем :))

После выполнения всех этих шагов файловая база 1С заработала на порядок шустрее. Запускаться стала максимум секунд за 10, а скорость перепроведения документов увеличилась в среднем в 12 раз.

Возможно, эта небольшая статья пригодится и вам, если вдруг понадобится ускорить файловую базу 1С.

P.S: А запустить файловую 1С, используя сетевой доступ к общей папке - все же нереально, т.к. даше самый шустрый твердотельный диск, оперативная память и процессор уткнутся в сетевые блокировки, и работа более одного пользователя будет фактически невозможна. Речь идет конкретно о конфигурации УТ 11.1. Самописные небольшие конфигурации вполне могут работать весьма быстро даже в файловом варианте.

Дополнения из комментариев к публикации:

Дефрагментация диска с файловой базой

Свертка базы (может оказаться полезной, если база большого объема, например, за несколько лет). У клиента база была достаточно молодая, поэтому свертка была нецелесообразна.

Модернизация аппаратной части - более быстрый винчестер, новый свитч, процессор, и т.д.

Установить на веб-сервер, доступ с помощью тонкого клиента. Тут мнения разделились. Кто-то говорит, в разы быстрее, кто-то - что ускорения не отмечено.

Долго гадал, почему из трех практически идентичных компьютеров Core I7 одного и того же поколения 1С на двух работает быстро, а на третьем существенно медленнее.

Так как там серверная БД, пришлось серьезно вникать в анализ производительности БД, купил даже курс
"Ускорение и оптимизация систем на 1С:Предприятие 8.3" и кстати не сочтите за рекламу - очень доволен остался. Парни просто профи в вопросе и умении излагать материал.
По советам из этого курса внедрил подсистему, фиксирующую время выполнения операций и стал изучать на 3х секундном процессе открытия определенной формы сколько тратится на запрос БД /процессорную обработку / Передачу данных на клиент.

Начал анализировать, у каких пользователей, в какое время, с какого сервера/клиента получается быстро или медленно.

Конечно же, поменял сервера местами, снова измерил время работы и выяснил что одинаковые сервера с чрезвычайно похожими сетапами дают разное время открытия формы. Хоть тресни.

Пошел к бородатому и чрезвычайно толковому сисадмину, рассказал про этот парадокс и он дал ответ, от которого во мне что-то перевернулось.

А я говорит, в одном сервере на днях в настройках электропитания поставил режим "Высокой производительности". Ну или в дополнительных параметрах питания, нашел раздел "Управление питанием процессора" - "Минимальное состояние процессора" - и поставил настройку 100%



Каково же было мое удивление, когда я замерил скорость открытия формы.


Ускорение и оптимизация систем на 1С:Предприятие 8.3

Я думаю, пояснять этот график не надо.

Конечно, грамотный айтишник скажет, что еще в БИОС надо выставлять максимальную производительность процессора, что бы в Windows уже не требовалось за этим следить. Но для сервера лезть в БИОС это целая история, причем ночная. А изменить сделать предложенную настройку настолько просто и очевидно - что стало стыдно за то, что потребовалось так много лет, что бы дойти до этой простой истины.

Ну и на всякий случай перечислю другие рекомендации, что записал для себя как обязательные..

- Использование скоростного SSD (можно SATA3, можно M.2)

- Запас оперативной памяти

- Windows тоже ставить на SSD или же обязательно переносить на SSD диск
- файл подкачки
- КЭШ сервера 1С (в реестре отредактировать команду запуска сервера)
- Терминальных пользователей вынес в отдельную виртуальную машину (тоже на SSD)
- Если используем решения на "обычных формах" - то никакой PostgreSQL - только MS SQL (Реагирую на гневный комментарий. - дело, конечно не в формах, а в технологии запросов, которые применялись в старых конфигурациях, когда допускалось соединение виртуальных таблиц без их предварительной записи во временную таблицу).

- Если решение на управляемых формах, то используем Web сервер для доставки приложения. Особенно заметно на файловых базах - ускорение получается даже на том компьютере, где лежит эта база (что казалось бы парадокс). А у сетевых клиентов - просто космос.

1) Производительность компьютеров растет. Увеличивается частота процессора, память. Сейчас на компьютерах не редкость SSD. При этом растет скорость работы файловой 1С локально, а вот скорость работы по сети остается прежней. На старом и на новом железе загрузка сети в диспетчере примерно одинакова. И составляет 15%-20%.

2) Скорость работы 1С зависит от скорости сети:
У меня на ноуте при формировании отчета загрузку сети в диспетчере показывает: WiFi в районе 7Мбит/с, по витой паре - 15Мбит/с. Т.е. примерно теже 15% от 54 и 100 соответственно.
Приходилось работать с файловой базой по гигабитной сети. Ни каких цифр здесь не приведу, но ощущения от работы 1С намного лучше.

Из этих наблюдений ясно, что сеть - это узкое место.

Стал я пробовать оптимизировать сетевой стек netsh int tcp set global autotuninglevel=disabled и т.д.
Вносил изменения в реестр LargeSystemCache, DisablePagingExecutive, NtfsDisableLastAccessUpdate, NtfsDisable8dot3NameCreation, EnableOplocks, OplocksDisabled и т.д.
Пробовал работать через сетевую папку и сетевой диск.
Но особого увеличения производительности не было.

В результате поисков и экспериментов обнаружил, что формат базы 8.2.14 и размер страницы 4К.

Получить информацию о формате БД можно, запустив команду:
"C:\Program Files\1cv8\8.3.11.2867\bin\cnvdbfl.exe" -i D:\Base1S8\1Cv8.1CD

Изменил формат базы на 8.3.8 и размер страницы на 32К:
"C:\Program Files\1cv8\8.3.11.2867\bin\cnvdbfl.exe" -с -p 32K D:\Base1S8\1Cv8.1CD

Результат очень положительный. Отчет на ноуте формируется в 2-3 раза быстрее. Загрузка сети по WiFi - 32 Мбит/с, по витой паре более 50 Мбит/с.

Все замеры производились на толстом клиенте - конфигурации на обычных формах.

Цитата:
"В новом формате (версии "8.3.8") появились следующие возможности:

  • Уменьшен размер и оптимизирована структура заголовка с метаинформацией в файле 1Cv8.1CD. Это позволяет существенно снизить число операций чтения файла при открытии базы данных и, тем самым, заметно ускорить время старта и начала работы программы.
  • Теперь можно настраивать размер внутренней страницы файла данных. Это размер порции данных, в которых хранится информация и которыми обменивается программа с файловой системой. Предыдущий формат файловой базы данных (версии "8.2.14") поддерживал единственный размер внутренней страницы файла – 4Кб. Новый формат по умолчанию использует размер страницы 8Кб, но позволяет его менять в диапазоне от 4Кб до 64Кб.

Наибольший эффект от использования нового формата файловых баз данных ожидается в следующих сценариях:

  • "холодный" запуск программы,
  • работа с файлами базы данных по локальной сети,
  • работа с сильно фрагментированной базой данных,
  • использование дисковых подсистем с невысокой производительностью.

При создании новых файловых баз данных рекомендуется использовать настройки формата базы по умолчанию (версия формата "8.3.8", размер страницы файла 8Кб). Если Вы используете базу данных, созданную в предыдущих версиях платформы, и наблюдаете недостаточно высокую производительность при старте и во время работы программы, то рекомендуется сконвертировать базу данных на новый формат файла."

Как видим из статьи, формат 8.3.8 дает нам весьма любопытные и интересные возможности.

Читайте также: