1с файловая база настройка
Предположим, что программа 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С. Ограничением при работе нескольких (>10) пользователей уже будет выступать не сеть, тут 1 Гбит ещё хватит, а блокировки при многопользовательской работе.
- Платформа 1C 8.3 в разы требовательнее к грамотной настройке сети. Влиять может все: деинсталляция (а не просто отключение) антивируса, удаление лишних сетевых протоколов, смена драйверов, от физического удаления второй сетевой карты на сервере.
- Настройки антивирусов по умолчанию снижают производительность. Если разрешить процессу 1cv8 делать все, скорость такая же, как и без антивируса.
⚡ Подписывайтесь на канал или задавайте вопрос на сайте — постараемся помочь всеми техническими силами. Безопасной и производительной работы в Windows и 1С.
Итак, ситуация. У нас есть файловая база, опубликованная через web-сервер (в нашем случае Apache), с которой мы хотим работать из обновлятора.
Для некоторых операций (обновление, архивация) требуется монопольный доступ к базе и с этой задачей прекрасно справляется типовой механизм освобождения базы от пользователей и регламентных заданий.
Но если база файловая и используется веб-сервером - требуется его остановка на время работы с базой, требующей монопольного доступа. Сегодня я расскажу как это делать из обновлятора автоматически.
Для этого заходим в свойства нужной базы:
Настраиваем блокировку
Переходим на закладку "События"->"Перед блокировкой" и пишем сюда следующий скрипт:
Что я делаю? Я останавливаю службу по имени Apache2.4, запущенную на сетевом компьютере tezis (этот тот компьютер, на котором крутится веб-сервер Apache).
После этого я жду 10 секунд, чтобы быть уверенным, что служба точно остановилась.
Если обновлятор запускается на том же компьютере, что и веб-сервер - команда остановки службы будет проще:
Настраиваем разблокировку
Для этого там же (в свойствах) переходим на закладку "После разблокировки" и пишем сюда скрипт для запуска службы, которую мы остановили при блокировке:
Если обновлятор запускается на том же компьютере, что и веб-сервер - команда запуска службы будет проще:
Проверяем в деле
Запустим архивацию, настроенной нами базы:
Видно, что в перед блокировкой базы служба Apache на компьютере с веб-сервером была остановлена.
Затем была осуществлена блокировка доступа к базе. Сделана архивная копия.
А в самом конце, после разблокировки доступа к базе, мы вновь запустили службу веб-сервера.
Возможные трудности
Если обновлятор запускается без прав администратора (а это нормальная ситуация, так обычно и делают) - на остановку и запуск службы веб-сервера может не хватить прав.
В этом случае вам может понадобиться дать пользователю разрешение на запуск и остановку служб. Вот инструкция: ссылка.
Спасибо одному из пользователей обновлятора - Андрей, спасибо - что разобрался с ситуацией и поделился решением.
С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).
Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.
В этой статье мы рассмотрим проблему с получением монопольного доступа, которая возникает при обслуживании файловых баз 1С, опубликованных на веб-сервере (IIS или Apache).
Эта проблема возникает только для файловых баз, когда веб-сервер может блокировать монопольный доступ к базе данных даже, если все пользователи покинули базу.
Монопольный доступ бывает нужен при архивации файловой базы (если вы не используете возможности теневого копирования) или, например, при таких операциях как обновление и тестирование базы.
База опубликована на веб-сервере IIS
При публикации файловых баз на IIS я рекомендую заводить под каждую базу отдельный пул приложений. В этом случае для получения монопольного доступа к конкретной базе нам достаточно будет остановить лишь конкретный пул приложений, вместо того, чтобы останавливать работу всего веб-сервера. При таком сценарии работа остальных баз, опубликованных на этом веб-сервере затронута не будет.
Как добиться создания отдельного пула под каждую базу (iis)
База публикуется при помощи обновлятора (iis)
В настройках публикации установите опцию "Использовать индивидуальный пул приложений (iis)":
В этом случае обновлятор после публикации будет сам создавать пул приложений на веб-сервере IIS с именем публикации базы, а затем прописывать этот же пул в настройках самой базы на веб-сервере IIS.
База публикуется вручную (iis)
Зайдите в диспетчер служб IIS:
Создайте новый пул приложений, не забыв установить свойство "Версия среды .NET Framework" в значение "Без управляемого кода".
Пропишите этот пул в свойствах базы:
Как блокировать базу (iis)
Для корректной блокировки нам нужно сначала выгнать всех пользователей и только затем остановить пул приложений базы.
Внимание. Сразу рекомендую вам зайти в свойства файловой базы и ознакомиться с опцией "Способ блокировки" на закладке "Общие". В случае публикации на веб-сервере я рекомендую установить это значение в "С подключением если занята". Внимательно прочитайте подсказку к этой опции.
Зайдите в свойства базы, закладка "События", закладка "После блокировки":
Событие "После блокировки" (в отличие от события "Перед блокировкой") возникает уже после того, как обновлятор попытался выгнать пользователей из базы. Поэтому именно здесь следует написать скрипт для остановки пула приложений нашей базы.
Здесь возможны следующие варианты.
Обновлятор установлен на том же компьютере, что и веб-сервер iis
В этом случае нажмите на ссылку "обновлятор" на панеле скрипта и выберите из меню "Методы"-"Остановить пул приложений (для веб-сервера iis)":
В редактор вставится следующий скрипт:
Этой командой мы просим обновлятор остановить пул приложений с определенным именем на веб-сервере iis. Мы можем здесь или указать нужное имя (параметр name), либо оставить его пустым и тогда обновлятор возьмёт имя пула приложений из настроек публикации базы.
Для разблокировки базы на закладке "После разблокировки" выберем меню "Методы"-"Запустить пул приложений (для веб-сервера iis):
В редактор вставится следующий скрипт:
Этой командой мы просим обновлятор запустить пул приложений с определенным именем на веб-сервере iis. Мы можем здесь или указать нужное имя (параметр name), либо оставить его пустым и тогда обновлятор возьмёт имя пула приложений из настроек публикации базы.
Обновлятор и веб-сервер iis установлены на разных компьютерах
В этом случае вам придётся самостоятельно реализовать скрипты для остановки и запуска нужного пула приложений. Если вы поделитесь своими наработками - я с благодарностью опубликую их в этом месте.
База опубликована на веб-сервере APACHE
При публикации файловых баз на APACHE я рекомендую заводить отдельный экземпляр веб-сервера под каждую базу, чтобы была возможность останавливать веб-сервер конкретной базы без нарушения работы других баз.
Как блокировать базу (apache)
Для корректной блокировки нам нужно сначала выгнать всех пользователей и только затем остановить пул приложений базы.
Внимание. Сразу рекомендую вам зайти в свойства файловой базы и ознакомиться с опцией "Способ блокировки" на закладке "Общие". В случае публикации на веб-сервере я рекомендую установить это значение в "С подключением если занята". Внимательно прочитайте подсказку к этой опции.
Зайдите в свойства базы, закладка "События", закладка "После блокировки":
Событие "После блокировки" (в отличие от события "Перед блокировкой") возникает уже после того, как обновлятор попытался выгнать пользователей из базы. Поэтому именно здесь следует написать скрипт для остановки веб-сервера нашей базы.
Здесь возможны следующие варианты.
Обновлятор установлен на том же компьютере, что и веб-сервер apache (windows)
В событии "После блокировки" нужно прописать скрипт для остановки службы, соответствующей экземпляру APACHE нашей базы.
Вот пример такого скрипта:
Вместо ApacheServiceName у вас будет своё имя службы.
Если же этот скрипт уже прописан в настройках веб-публикации базы, то для его вызова достаточно вызывать команду обновлятора:
Соответственно в событии "После разблокировки" укажем:
Обновлятор и веб-сервер apache (windows) установлены на разных компьютерах
В событии "После блокировки" нужно прописать скрипт для остановки службы, соответствующей экземпляру APACHE нашей базы.
Вот пример такого скрипта:
Вместо ApacheServiceName у вас будет своё имя службы. Вместо pc укажите сетевое имя компьютера, на котором установлен веб-сервер.
Так как вызов команды sc несинхронный, мы вынуждены вставить вставить некоторую паузу, чтобы дождаться окончательной остановки сервиса. В данном случае я создал паузу в 60 секунд при помощи команды ping.
Если же этот скрипт уже прописан в настройках веб-публикации базы, то для его вызова достаточно вызывать команду обновлятора:
Соответственно в событии "После разблокировки" укажем:
Обновлятор и веб-сервер apache (другие ОС) установлены на разных компьютерах
В этом случае вам придётся самостоятельно реализовать скрипты для остановки и запуска веб-сервера. Если вы поделитесь своими наработками - я с благодарностью опубликую их в этом месте.
Возможные трудности
Если обновлятор запускается под пользователем без прав администратора - необходимо дать пользователю разрешения на запуск и остановку служб, вот инструкция: ссылка.
С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).
Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.
Пытались настроить работу 1С по локальной сети, но ничего не получилось? Тогда Вы попали именно туда, куда нужно!
Как Вы знаете или только сейчас услышали, существует два вида баз данных 1С:
· Клиент-серверная база данных
· Файловая база данных
И в нашей статье мы поговорим о файловой базе данных 1С.
1. Файловая база данных
В наш век компьютеризации сложно представить, что у компании нет возможности установить удаленный сервер, и пользователям приходится работать в одной локальной сети. И для нормальной работы пользователей в нашей базе данных необходимо настроить доступ на уровне локальной сети.
Итак, давайте рассмотрим такую ситуацию. Компания занимается продажей автомобильных запчастей, используется соединение компьютеров в локальную сеть при помощи сетевого кабеля. В базе должны работать 10 человек: директор, главный бухгалтер, бухгалтер, системный администратор, 3 менеджера по продажам и 3 менеджера по закупкам. На всех компьютерах стоит Windows 10.
Компания, на первый взгляд, преуспевающая и возможность приобрести сервер должна быть, но его нет.
2. Настройка общего доступа к папке
Наша 1С информационная база данных находится на компьютере системного администратора, который постоянно включен. Для того чтобы предоставить доступ, необходимо совсем немного – всего лишь знания.
Для начала на всех компьютерах необходимо не что иное, как установить платформу 1С, где она еще не установлена. Если необходимая версия платформы стоит на всех ПК, идем дальше. Также хочу уточнить, что версия платформы на всех ПК должна быть одинаковая.
Следующий шаг у нас - настройка общего доступа к папкам. С учетом того, что у нас Windows 10, нам необходимо зайти сначала в «Панель управления». Для этого необходимо, к примеру, открыть «Мой компьютер» и в верхней строке адреса папки нажать стрелку в сторону и вам откроется быстрое меню перехода (см. скрин).
Так как нам необходимо настроить общий доступ, то переходим в панель управления. В открывшемся окне пункт «Сеть и Интернет». После выбираем «Центр управления сетями и общим доступом» Windows. После того как мы попали в «Центр», необходимо выбрать пункт «Изменить дополнительные параметры общего доступа» на боковом меню «Центра».
В открывшемся окне, необходимо установить настройки такие же, как и на скриншоте, а именно включить общий доступ к файлам и принтерам, а также включить сетевое обнаружение.
3. Параметры общего доступа
Итак, самое сложное позади. Осталось самое легкое – открыть общий доступ к папке с базой.
К примеру, она находится на «Локальном диске (E:)» в папке «Base». Когда мы знаем местоположение файловой базы данных, открываем доступ к ней. Для этого выбираем нашу папку и вызываем ее свойства (выделяем папку и кликнем правой кнопкой мыши, появляется контекстное меню папки, выбираем пункт «Свойства»). Нам открылось окно с информацией о папке и множеством вкладок. Но нас интересует только одна, а именно «Доступ». Перейдя на нее, видим кнопку «Общий доступ». Нажимаем ее, и перед нами открывается окно, в котором мы можем выбрать, кому необходимо предоставить доступ к данной папке и настроить общий доступ к папкам. Лучше всего выбрать вариант «Все» и после нажать «Добавить». В списке пользователей, которым доступна эта папка, появится новая запись. В колонке «Уровень разрешений», необходимо установить значение «Чтение и запись». Без такого значения запуск информационной базы 1С будет невозможен.
Вот и подошли мы к концу нашего увлекательного путешествия по настройке работы 1С по локальной сети. Теперь остался только один момент: на каждом компьютере добавить базу примерно с таким адресом «File="\\Админ\E:\Base";»
После этого все пользователи могут без проблем выполнять свою работу в файловой базе данных.
Читайте также: