Сегодня: 23 февраля, 2024

Основные проблемы и задачи, с которыми сталкиваются владельцы корпоративных лицензий 1С, согласно опыту РКЛ.

Крупная компания – это когда у тебя более 500 пользователей в базе

Давайте начнем с вопроса, который задается почти 99% пользователям 1С, считающим себя крупными. Он звучит так: “Когда нужно переходить на КОРП и зачем это вообще делать?”

Здесь существует множество заблуждений.

Одно из основных – “У меня все работает медленно, я куплю КОРП, там все будет летать”. Многие верят, что компания “1С” специально создала ситуацию, чтобы пользователи приобретали КОРП, устанавливая на обычную ПРОФ-платформу “двигатели”, которые работают медленнее. И если установить КОРП-движок, то система сразу станет быстрее.

На самом деле это неверно. Если у вас были проблемы с производительностью, то при переходе на КОРП они могут усилиться. Это все, что вы достигнете. Сам по себе КОРП не обеспечивает значительного ускорения работы системы.

КОРП необходим только в случае, когда в вашей базе данных появится более 500 пользователей. Все остальные ограничения ПРОФ-версии платформы по сравнению с корпоративной либо легко обходятся масштабированием кластера, либо вовсе не являются критичными.

Вам, к примеру, действительно не критично, имеете ли вы 12 ядер на сервере 1С или нет. Гораздо более разумным будет установить еще один сервер, даже виртуальный. Если у вас стоит, скажем, сервер с 96 ядрами, вам достаточно разделить его на виртуальные серверы по 12 ядер, установить на каждый лицензию ПРОФ за 90 тысяч и использовать дальше. Не нужно обновлять все лицензии на КОРП.

Таким образом, почти все ограничения, за исключением одного – 500 пользователей – можно легко обойти или нивелировать. Если у вас 500 пользователей в одной базе данных, вам необходим переход на КОРП, ведь других вариантов просто нет.

Также стоит отметить, что при отсутствии КОРП-лицензии вы не сможете использовать профили безопасности, ограничения ресурсов и счетчики производительности в кластере. Но, честно говоря, даже на КОРП-лицензии они используются крайне редко. Реально это нужно лишь тем, кто предоставляет своим клиентам Фреш или Облако.

Да, есть в КОРП очень гибкая настройка Требований назначения функциональности (ТНФ) в разрезе баз, типов клиентов, указания конкретного регламентного или фонового задания, тут надо трезво оценить нужна ли вам такая гибкость.

КОРП нужен только крупным компаниям. По мнению фирмы «1С», крупная компания – это когда у тебя 500 пользователей в базе. Если у тебя 500 пользователей в базе нет – ты чуть меньше, чем крупный, и тебе КОРП особо не нужен.

Что такое РКЛ?

Когда компания уже купила КОРП-лицензии на платформу – возникает главный вопрос: «Что такое РКЛ? Зачем это вообще?»

Большинство пользователей полагают, что плата в 15% за корпоративную лицензию «1С» является просто налогом, который необходимо уплатить компании, поскольку они хотят деньги. Но это не совсем так. Правильнее сказать, что это оплата за годовую техническую поддержку.

Ваш франчайзи будет предоставлять вам первую линию техподдержки, однако есть одно серьезное ограничение – РКЛ могут оказывать только компании, имеющие в штате экспертов по технологическим вопросам.

Фирма “1С” запретит оказывать РКЛ тем компаниям, у которых нет таких экспертов. Часто именно первая линия поддержки успешно решает проблему, так как они имеют опыт работы с множеством КОРП-систем и, скорее всего, уже сталкивались с похожей проблемой. Это особенно важно для систем, работоспособность которых критична для бизнеса.

Заблуждение: КОРП – это не про скорость

Даже если вы решите не обращать внимание на определенную проблему, устанете собирать данные из технологического журнала и не будете иметь желания или возможности создать тестовую среду для подтверждения ошибки – компания “1С” не опустит руки. Специалисты из корпоративной технической поддержки будут напоминать вам письмами: “Как дела? Когда вы развернете тестовую среду? Или мы можем закрыть ваше обращение?” Это отличная мотивация, поскольку закрытие обращения вызывает опасение, но если вы ничего не сделаете, они не смогут вам помочь. Простая техническая поддержка не будет вас мотивировать на принятие действий, в то время как корпоративная поддержка будет.

Возвращаясь к вопросу о скорости – напрямую корпоративная техническая поддержка не предоставляет оптимизацию кода. Однако, поскольку специалисты по РКЛ будут заботиться о вашей инфраструктуре в целом, по крайней мере у вас будет больше стабильности, а это повлияет и на скорость работы.

Квалифицированные специалисты по РКЛ также занимаются скоростью работы. Они анализируют ваши технологические журналы, указывают на проблемные места. Они не перепишут код за вас, хотя, возможно, договорятся о внесении изменений, если это будет необходимо. В любом случае, они могут помочь вам определить:

  • где возникают проблемы;
  • где возможны будущие проблемы;
  • где происходят массовые маленькие операции;
  • где выполняются долгие операции.

Мы провели анализ технологического журнала для одного из наших клиентов за неделю и обнаружили, что одна операция, которая выполнялась миллионы раз в течение недели, занимала значительное количество времени. При проверке мы выяснили, что это было регламентное задание. Как мы относимся к фоновым задачам? И что, если оно выполняется? Однако, для нас было важно узнать, что именно оно делает. Мы узнали, что “это фоновая задача, которая собирает данные для отчета, который уже больше никто не читает”.

Таким образом, мы анализировали технологический журнал, удалили данное регламентное задание и тем самым увеличили скорость работы всей системы

Что происходит в мире РКЛ?

Однако, давайте разберемся, что конкретно входит в работу РКЛ-щиков и за что они отвечают. Во-первых, они отвечают за настройку ваших СУБД (систем управления базами данных), будь то MS SQL или PostgreSQL. РКЛ-щики, которые продали вам лицензию, должны быть специалистами по обоим СУБД. Если они говорят, что у них нет специалистов по определенной СУБД, это неприемлемо – требуйте от них настройку и консультации по обеим системам.

Второй аспект работы РКЛ-щиков – консультирование. Они не просто настраивают различные функции и кнопки в вашей системе, а вместе со вами анализируют ее работу и дают рекомендации. Они должны быть готовы ответить на ваши вопросы и помочь решить возникшие проблемы. Их работа в течение года – это не просто налог, а обязательство предоставить вам профессиональную поддержку.

Таким образом, РКЛ-щики не отвечают за скорость работы вашей системы, но они отвечают за настройку СУБД и предоставление консультаций по работе с ними. Это их основная ответственность в течение года.

Помимо того, что РКЛ-щики отвечают за настройку СУБД, они также должны предоставлять консультации по настройке кластеров 1С. Это включает разбор вопросов о множестве центральных серверов, требованиях по функциональности и уровнях отказоустойчивости. Они должны обладать полным знанием всех мелочей и настроек кластера 1С. Это их прямая обязанность, так как их консультации способствуют повышению стабильности вашей системы.

РКЛ-щики должны быть экспертами, способными анализировать и настраивать систему. Однако, в рамках нашей компании, настройка СУБД составляет незначительный процент от всех выполняемых задач. Мы только несколько раз за многие годы занимались настройкой СУБД для кого-то. Если что-то было неправильно настроено, мы бы обнаружили это уже давно. Вероятно, ваши пользователи не так терпеливы, и если у них возникли проблемы, они бы уже давно выразили недовольство.

“Лицензирование платформы КОРП: проблема с лицензиями через USB-ключи”

Одной из наиболее распространенных проблем и источников вопросов является лицензирование в рамках платформы “1С”. Многие люди испытывают затруднения в понимании особенностей работы с лицензиями.

Вопросов по лицензированию действительно много. Некоторые люди ошибочно полагают, что поскольку программные лицензии ограничиваются по сеансам, то на одном компьютере невозможно запустить 15 баз данных 1С, используя одну лицензию. Однако это заблуждение. Просто учет лицензий станет более сложным. Если вы приобретаете двадцать программных лицензий, то помимо трех сетевых PIN-кодов вам будут предоставлены еще 20 локальных PIN-кодов. Введите этот код на каждом компьютере и вы можете запускать даже 800 баз данных 1С на данном компьютере, используя только одну лицензию, поскольку она является локальной.

Самые неприятные ситуации происходят при обновлении USB-ключей PROФ-лицензий до CORPORATE-лицензий.

Предположим, у вас есть USB-ключ PROФ на 500 пользователей. Если вам необходимо лицензировать 500 пользователей, вам требуется KEY. Вы осуществляете обновление, привязывая программную CORPORATE-лицензию к USB-ключу PROФ, и после этого все становится CORPORATE-лицензионным.

Это обновление USB-ключа PROФ-лицензии на программируемую CORPORATE-лицензию работает, но только до тех пор, пока у вас не возникнет очень интересный сценарий.

Предположим, у вас есть USB-ключ PROФ на 500 пользователей. Вы осуществляете обновление, привязывая программную CORPORATE-лицензию к USB-ключу PROФ. Вы кажется все делаете правильно, но это срабатывает только до момента, когда все доступные лицензии на данном USB-ключе будут заняты. Как только пользователи фактически займут все лицензии на данном USB-ключе, из вашего общего пула мгновенно исчезнут 500 корпоративных лицензий.
Это связано с тем, что если сервер видит флэшку через сеть через настройки файла nethasp.ini, а не локально установленную на сервере, то даже при занятии всех лицензий программная лицензия успешно пройдет проверку привязки.

Сервер 1С CORPORATE постоянно подсчитывает доступное количество корпоративных клиентских лицензий. Для этого он обращается к серверу лицензирования. Если сервер 1С является сервером лицензирования, он обращается к самому себе и постоянно пересчитывает доступные лицензии. При повторной проверке лицензий сервер обратится к файлу лицензий, файл лицензий сообщит ему: “Я привязан к этой USB-флэшке”, а флэшка ответит: “Нет доступных лицензий”. В результате сервер выдаст ошибку и отключит ваших 500 пользователей.

Предположим, у вас на сервере установлено 2000 корпоративных лицензий – 4 USB-ключа по 500 каждый. При этом все пользователи могут подключаться к серверу с использованием своих локальных PROФ-лицензий, если у каждого пользователя на компьютере установлен USB-ключ. Они используют PROФ-лицензию, и все пользователи авторизуются. При этом функциональность CORPORATE будет использоваться, поскольку сервер 1С видит, что доступно достаточно корпоративных лицензий для всех пользователей – неважно, используются ли они фактически или нет.

Однако в сценарии, о котором я рассказал, ваши 500 корпоративных лицензий мгновенно отключатся. Сервер получит информацию о доступных лишь 1500 лицензиях, и 500 пользователей из 2000 будут отключены, получив ошибку. Пользователь №1501 не сможет войти, пока не будет освобождена хотя бы одна из этих лицензий.

Почему я так подробно рассказываю о лицензировании? Потому что даже если вы создали высокодоступную систему с 800 кластерами, 500 репликами, но как только вы потеряете хотя бы одну лицензию, ваши бизнес-процессы будут считаться неработоспособными. При этом вам может показаться, что все функционирует без сбоев. Ваша администрация будет довольна, нагрузка на систему будет отсутствовать, но никто не сможет войти в систему.

Поэтому я призываю вас отказаться от использования USB-ключей, от технологии 20-го века, и полностью перейти на программные лицензии. Обновитесь до конца. Пора стать полностью программными.

Проще – лучше: оптимизация кластеров 1С

Когда речь заходит о кластерах 1С, многие корпоративные заказчики сталкиваются с проблемами и сложностями. Некорректное поведение или неправильная настройка кластера 1С могут стать источником множества проблем, связанных с работой приложения. Однако есть несколько практических советов, которые могут помочь упростить кластерные системы и снизить риски возникновения проблем.

  1. Максимальное упрощение: Упростите свою кластерную систему до минимума. Не стремитесь к созданию сложных и многокомпонентных кластеров. Простая система реже сталкивается с техническими проблемами. Если у вас есть возможность упростить кластер, используйте эту возможность.

  2. Один сервер: Если позволяют ваши потребности, попробуйте использовать один сервер, который будет выполнять все необходимые функции, за исключением программного сервера лицензирования. Чем проще система, тем меньше сложностей и рисков возникновения ошибок.

  3. Не монструйте: Избегайте создания излишне сложных кластерных схем. Сложные схемы управления кластером могут затруднить процесс идентификации и устранения проблем, а также повысить риски возникновения сбоев и ошибок. Старайтесь не перегибать палку и придерживаться минимально необходимого состояния кластера.

  4. Распределение баз данных: Если у вас несколько баз данных, не пытайтесь поместить их все на один мегакластер. Распределите базы на разные серверы в зависимости от их функциональности. Например, большие базы пользователей могут требовать кластеризации, но остальные базы, такие как ЗУП, БП и Документооборот, могут исполняться на отдельных серверах. Разделение баз позволит более эффективно управлять нагрузкой и легче найти и устранить проблемы.

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

Проблемы с полнотекстовым поиском и поиском в целом

Владельцы файловых баз на платформе 1С сталкиваются с проблемами, связанными с полнотекстовым поиском и поиском в целом. При работе с большими базами данных возникают сложности, и поиск может работать плохо или вовсе не работать. Эти проблемы возникают из-за неэффективного использования полнотекстового поиска, общего поля поиска и сортировок в динамическом списке. В таких случаях можно принять ряд практических решений.

  1. Удалите общее поле поиска: Полное удаление общего поля поиска со всех форм может помочь упростить и ускорить процесс поиска. Пользователи могут быть недовольны этим решением, но обучение пользователей использованию сочетания клавиш Alt-F для поиска может быть реализовано вместо этого.

  2. Ограничение сортировок: Установите ограничение на сортировки в динамическом списке. Удалите все излишние поля и разрешите только сортировки по индексированным полям, таким как дата или номер. Это поможет предотвратить возможные проблемы, связанные с сортировкой по сложным полям.

  3. Выделите отдельный сервер для полнотекстового поиска: Если полнотекстовый поиск критичен для вашей организации, рассмотрите возможность выделения отдельного сервера для этой функциональности. Этот сервер должен быть мощным и обеспечивать высокую производительность. Обеспечьте отказоустойчивость, чтобы при отказе основного сервера полнотекстовый поиск мог быть переключен на резервный сервер.

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

Журнал регистрации

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

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

  2. Ограничение доступа к старым записям: В продуктовой базе данных ограничьте доступность журнала регистрации только к последнему часу (или максимум последним трем часам). Старые записи должны быть автоматически перемещены в отдельную папку и архивированы. Это поможет предотвратить перегрузку и снизить риск потери производительности при поиске в большом объеме данных.

  3. Использование отдельной платформы для анализа: Для анализа журнала регистрации создайте отдельную платформу или базу данных. Желательно использовать файловую базу данных или интегрировать с ElasticSearch или ClickHouse, чтобы проводить анализ с помощью SQL-запросов. Это поможет ускорить поиск и анализ данных в журнале регистрации, а также избежать негативного влияния на производительность продуктовой платформы.

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