Дело было так... как-то решили мы всей компанией перейти на х64 сервера. Все бы хорошо, но некоторые компоненты, отлично зарекомендовавшие себя на х32, наотрез отказались работать на х64. При том, что под х32 клиентом на этом же сервере работали замечательно!
И понадобилась кропотливая работа по поиску альтернативных решений.
Как пример, в этот момент нами была потеряна мелкософтовая компонента CAPICOM...
В данной статье я показываю как настроить работу x32 COM компонент с x64 сервером 1С под 2008 R2.
Данное недостаточно запублицированное решение я нашел в нете, проверил на нескольких наших серверах и уже запустил в бой.
Файлы
ВНИМАНИЕ:
Файлы из Базы знаний - это исходный код разработки.
Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы.
Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных.
Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
За считанные месяцы цены на серверное железо выросли в разы, а бюджеты компаний – нет, поэтому ошибка при подборе оборудования для 1С теперь обходится особенно дорого. Разбираем, почему логика «возьмем самое дорогое и производительное» здесь не работает, какие особенности памяти, дисков и серверных конфигураций нужно учитывать и где действительно можно сэкономить – от свертки базы до использования десктопного компьютера. Показываем, как продавцы могут предлагать вместо подходящих компонентов более выгодные им аналоги или неликвид и почему советы нейросетей о частоте процессора, конфигурациях и тесте Гилева нельзя принимать на веру. Объясняем, какие ошибки приводят к потере производительности и на чем при подборе сервера для 1С экономить нельзя.
Снимает настройки кластера, рабочих серверов и баз штатным объектом платформы и по каждой пишет не значение, а последствие: не "резервирование = Ложь", а "при аварии сеансы базы завершатся, а не переедут". Только чтение.
Поставил RAS, а кластер отвечает "различаются версии клиента и сервера". Открыл свойства сервера, а поля интервала перезапуска там больше нет. Разбор двух диалогов консоли: что вписывать в каждое поле и от чего это защищает.
Кластер достался настроенным кем-то другим: rphost растёт, к утру обмены не выполнены, а в консоли десятки значений, и непонятно, норма это или мина. Разбор того, чего стоят дефолты кластера на боевой базе и чем их читать, не открывая консоль.
Сводная таблица показывала загрузку диска 97-99 % каждый день, и вывод напрашивался сам: диск упирается в потолок, надо расширять. Среднее по тому же ряду оказалось 4,24 %, а выше 80 % диск был в семи пятиминутных интервалах из 2016 - по одному на каждую ночь недели, это окно резервного копирования. В потолок диск не упирается. Потом тот же метод соврал в обратную сторону: на прореженном до пяти минут ряде исчезли пятнадцатисекундные провалы свободного места до 27 мегабайт. Одна ошибка чтения графиков дала два противоположных ложных вывода из одних данных. Настоящее узкое место сидело в памяти, и находок там две: растущий рабочий процесс сервера приложений и мёртвые сеансы терминального сервера. Разбираю, какие свойства кластера это ограничивают, какие три таймаута проверить, и показываю место, где мой собственный расчёт не сошёлся на три с половиной гигабайта.
Переносили боевую базу 276 ГБ с MS SQL на PostgreSQL. Перенос вставал четыре раза подряд, каждый раз через час и без единого сообщения об ошибке. Две гипотезы, взятые из чужих статей, замеры не подтвердили. Настоящей причиной оказался неразрывный пробел в наименовании номенклатуры: ICU схлопывает его с обычным, MS SQL считает строки разными, PostgreSQL одинаковыми, и уникальный индекс не создаётся. Разбор с цифрами, скриптом поиска и правилом вместо списка символов.
Перенесли базу 1С на 276 ГБ с Windows и MS SQL на Ubuntu и PostgreSQL. Главная неприятность оказалась вообще не про Linux, а вот восемь встреченных по дороге ловушек про него ровно настолько, что каждая стоила отдельного часа. Флаг виртуализации, который врёт; процессы, умирающие вместе с сессией; кластер с английской локалью; автотюнер с work_mem 512 МБ. Ни одной из них нет в чек-листах, которые я читал перед началом.
Да вообще-то мне мой вариант больше нравится. Я в свое время наелся COM+. Слишком там много всего наверчено. Все равно нужен был свой мини-сервер на 1С для разных нужд: работа с СМС, заодно и использование 32-битных dll приспособил
5. В ветке «Components» импортируем заранее зарегистрированную компоненту.
У меня на этом шаге уже после выборы компоненты ругнулось на то, что методы зарегестрированы не будут в системе и предложили вместо выбора заранее установленной компонентой воспользоваться ее установкой
Я выбрал пункт 1. Install new component и все содержимое компоненты автоматом установилось вместе с методами