Очистка кэша 1С. Исполнитель

25.10.23

База данных - Чистка данных

Очередная вариативная очистка кэша 1С с помощью Исполнителя 3.0.2.2.

Скачать исходный код

Наименование Файл Версия Размер
Очистка кэша 1С
.zip 1,38Kb
4
.zip 1.0 1,38Kb 4 Скачать

Приветствую тебя, %username%

Думаю, ни для кого не секрет, что самыми частыми публикациями на портале являются "Очистка кэша" и "Очистка регистров сведений". Их тут наклепали столько, что случись постапокалипсис, мы не останемся с "грязным" кэшем и переполненными РС.

Кэш предлагали чистить и из 1С, и батниками, и разными Шеллами, и всякими ЯВУ, но не было на Исполнителе. Решил заполнить эту нишу.

Если кто не знает, что такое "Исполнитель" - это инструмент для автоматизации и администрирования информационных систем. Скриптовый язык программирования. По сути, эквивалент OneScript, но от фирмы 1С. Изначально синтаксис был похож на 1С. Но на данный момент это уже похоже на современный ЯВУ с типизацией, лямбдами, дженериками, ООП и прочими ноу-хау. На момент написания статьи актуальная версия 3.0.2.2.

Скажу честно, что с наскока с ним не так просто разобраться, хотя я щупал не один десяток разных языков. Если что-то начать писать, то придётся потратить много времени даже на поиск нужного метода. Документация хромает. Ну да ладно, это всё лирика.

В итоге вышел универсальный мультиплатформенный скрипт, позволяющий чистить программный и пользовательский кэш в Win (7...11) и любых Linux (и Mac).

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

В архиве находится скрипт sbsl, который на вход принимает 2 параметра: первый параметр (обязательный) - Тип кэша - (строка) "p" (для программного) или "u" (для пользовательского); второй параметр (необязательный) - Гуид - (строка) с идентификатором той базы, в которой надо чистить кэш.

Примеры запуска:

для win (очистка пользовательского кэша для базы с ИД 00000000-0000-0000-0000-000000000000):

executor ПутьДоСкрипта\ClearCache.sbsl u 00000000-0000-0000-0000-000000000000

для lin (очистка программного кэша для всех баз):

./executor ПутьДоСкрипта/ClearCache.sbsl p

Используя данный скрипт, вы должны понимать о будущих последствиях.

Протестировано на Win 10 и Ubuntu 23.10

Всем новых строк кода!

P.S. Не забывайте ходить в мой_профиль - там много интересного.

исполнитель скрипт чистка очистка кэш кэша оптимизация ускорение производительность свободное место sbsl программный пользовательский shell script

См. также

Infostart Toolkit: Инструменты разработчика 1С 8.3 на управляемых формах

Инструментарий разработчика Роли и права Запросы СКД Программист Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

10000 руб.

02.09.2020    131967    721    390    

763

Infostart PrintWizard - создание и редактирование печатных форм в 1С 8.3

Пакетная печать Печатные формы Инструментарий разработчика Программист Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

18000 руб.

06.10.2023    9636    28    6    

51

Infostart УДиФ: Управление данными и формами 1С

Инструменты администратора БД Инструментарий разработчика Роли и права Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

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

10000 руб.

10.11.2023    5680    16    2    

39

PowerTools

Инструментарий разработчика Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

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

3600 руб.

14.01.2013    180231    1097    0    

871

OneDebugger - инструмент для отладки кода без использования режима конфигуратора

Инструментарий разработчика Программист Платформа 1С v8.3 Платные (руб)

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

5400 руб.

17.05.2024    6724    15    12    

42

Удаление данных с отбором и построением дерева ссылок в базах 1С 8.1-8.3 УТ 10.3./11, БП 2/3, ЗУП 2.5/3, КА 1.1/2, УНФ 1.6/3.0

Чистка данных Системный администратор Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 1С:Управление торговлей 10 1С:Управление торговлей 11 Платные (руб)

Данные обработки помогут Вам легко и, главное быстро, выполнить удаление любых данных в Ваших базах 1С на платформах 8.1-8.3. Обработки помогут легко просмотреть связи ссылок в виде дерева, выбрать что удалять, а что нет, используя любые отборы. Это позволит уменьшить объем лишней и не нужной информации в справочниках и документах, планах видов характеристик и др. объектах и облегчит работу с данными пользователям и Вам. Понятное расположение команд и настроек, в сочетании с описанием и справкой, еще упростят процесс. (Обновление от 04.10.2023, версия 4.2)

9600 руб.

22.02.2013    136792    249    144    

420

Универсальное выборочное удаление данных из базы 1С (любые конфигурации на упр.формах: БП 3.0, УТ 11, КА 2, ERP, УНФ, ЗУП 3, Розница и т.д.)

Чистка данных Программист Пользователь Платформа 1С v8.3 Управляемые формы 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Платные (руб)

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

3350 руб.

28.11.2019    24729    50    16    

65

Бустер Конвертации данных 3 (Infostart Toolkit)

Инструментарий разработчика Программист 8.3.14 1С:Конвертация данных Россия Платные (руб)

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

15000 руб.

07.10.2021    15510    3    12    

38
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Serg O. 270 25.10.23 09:35 Сейчас в теме
лучше на OneScript писать... и ставится он проще
2. SerVer1C 779 25.10.23 09:50 Сейчас в теме
(1) Лучше - это качественнее или быстрее? Исполнитель тоже ставится в 1 клик - распаковал папку с java версией и пользуйся.
sapervodichka; +1 Ответить
5. Serg O. 270 26.10.23 11:37 Сейчас в теме
(2) лучше - это и быстрее и "проще" код = Код 1С (практически все основные конструкции копи-пастить можно)
советую посмотреть небольшое видео-сравнение
Кто быстрее: Исполнитель, 1Скрипт или 1С? Гонка века!
6. SerVer1C 779 26.10.23 12:49 Сейчас в теме
(5) Чтобы не быть голословным, проверил теорию из видео, докладываю:
решето Эратосфена до 10М рассчитывалось:
на 1С x86 (8.3.23.1782): 128 сек
на OneScript x64 (1.8.4.5): 13 сек
на Исполнитель (3.0.2-2) java edition (11.0.16.1): 5 сек
Ни в коем случае не нахваливаю исполнитель, но в 3-й версии он подтянулся. На пороге 4-я версия.

А по поводу "проще" - всё зависит от бэкграунда программиста, кто-то и на плюсах будет быстрее писать, чем вы на 1с.
7. starik-2005 3046 26.10.23 14:27 Сейчас в теме
(6)
решето Эратосфена до 10М рассчитывалось:
на 1С x86 (8.3.23.1782): 128 сек
Вы на целероне штоле считали?
	n = 10000000;
	A = Новый Массив(n+1);
	Для Индекс = 0 По A.ВГраница() Цикл A[Индекс] = Истина КонецЦикла;
	НачальВремен1 = ТекущаяУниверсальнаяДатаВМиллисекундах();
	Для i = 2 По n Цикл Если Pow(i,2)>n Тогда Прервать КонецЕсли; Если A[i] Тогда j = Pow(i,2); Пока j<=n Цикл Если A[j] Тогда A[j]=Ложь КонецЕсли; j = j + i КонецЦикла КонецЕсли КонецЦикла;
	Времени1 = ТекущаяУниверсальнаяДатаВМиллисекундах() - НачальВремен1;
5 032 мс
8. SerVer1C 779 26.10.23 14:30 Сейчас в теме
(7) Код взят отсюда: https://gist.github.com/EvilBeaver/11c252f13199afca45c350442bd6dcfb
Изменил только кол-во чисел с 50М до 10М
Понятно, что его можно ускорить, но это тема другого разговора.
Если оригинальный код записать в 1 строку, то у меня получилось 13 сек.
9. starik-2005 3046 26.10.23 14:37 Сейчас в теме
(8)
Код взят отсюда: https://gist.github.com/EvilBeaver/11c252f13199afca45c350442bd6dcfb
Изменил только кол-во чисел с 50М до 10М
Понятно, что его можно ускорить, но это тема другого разговора.

С отладчиком 120 сек, без отладчика смотрите картинку.
Прикрепленные файлы:
10. SerVer1C 779 26.10.23 14:49 Сейчас в теме
(9) Да, запускал с отладчиком, поэтому так много.
В 1с циклы с большим количеством итераций нужно писать в 1 строку !!!
11. starik-2005 3046 26.10.23 14:49 Сейчас в теме
(8)
Если оригинальный код записать в 1 строку, то у меня получилось 13 сек.
Питон, самый элементарный код:
def eratosthenes(n):     # n - число, до которого хотим найти простые числа 
    sieve = list(range(n + 1))
    sieve[1] = 0    # без этой строки итоговый список будет содержать единицу
    for i in sieve:
        if i > 1:
            for j in range(2*i, len(sieve), i):
                sieve[j] = 0
    return sieve

a = eratosthenes(10000000)

~$ time python3 e.py 

real	0m1,160s
user	0m1,084s
sys	0m0,076s
Показать
Чуть больше секунды... Т.е. в дофига раз быстрее, чем исполнитель...
12. SerVer1C 779 26.10.23 14:50 Сейчас в теме
(11) Я думаю, вам нужно написать отдельную публикацию по решету Эратосфена и там уже продолжать исследования.
acvatoris; +1 Ответить
13. starik-2005 3046 26.10.23 14:55 Сейчас в теме
(12)
отдельную публикацию по решету Эратосфена
Здесь куча публикаций на эту тему. Но факт остается фактом: питон, который не считается среди программистов "быстрым" языком, уделывает исполнитель в 4+ раз.
А по поводу простых чисел, то на днях на хабре читал статейку с комментом о том, что мальчики-зайчики после институтов и колледжей, работ и занятостей, не могут даже элементарным брутфорсом проверить, является ли число простым на собеседовании. Т.е. не просто не могут про Эратосфена вспомнить - они даже примитивный алгоритм от 2 до Н-1 не в состоянии написать...
siamagic; SerVer1C; +2 Ответить
15. SerVer1C 779 26.10.23 15:29 Сейчас в теме
(13) я конечно же люблю питон, но если топорно писать и на нём, то прирост оказывается только в 1,5 раза :

import time


Н = 10000000
Массив = list()

Массив.append(0)
Массив.append(0)

for индекс in range(2, Н + 1):
    Массив.append(1)

времяНачала = time.time()
for индекс in range(2, Н + 1):
    if Массив[индекс] == 1:
        квадрат = индекс * индекс
        if квадрат <= Н:
            м = квадрат
            while м <= Н:
                Массив[м] = 0
                м += индекс

времяОкончания = time.time()
мсЦикла = времяОкончания - времяНачала

print(мсЦикла)
Показать


так что многое зависит от алгоритма и от используемых структур.
16. starik-2005 3046 26.10.23 17:58 Сейчас в теме
(15)
многое зависит от алгоритма и от используемых структур
Алгоритм тут как раз один и тот же, а вот структуры данных - да. И возникает вопрос о том, может ли 1С в исполнителе похвастаться разнообразием структур данных.
19. support 4450 27.10.23 04:50 Сейчас в теме
Это местный тролль, ему не надо отвечать
acvatoris; +1 Ответить
14. starik-2005 3046 26.10.23 15:13 Сейчас в теме
(5)
видео-сравнение
Зачетный видос, кстати. Только аффтор видео как и этот аффтор забыл про отладку в 1С.
SlavaKron; ZhokhovM; Serg O.; +3 Ответить
17. support 4450 26.10.23 20:55 Сейчас в теме
(1) Создатель OneScript, Андрей Овсянкин сейчас работает в фирме "1С".
ZhokhovM; SerVer1C; +2 Ответить
18. CheBurator 3123 26.10.23 23:47 Сейчас в теме
(17) Орефкова тоже забрали на работу в 1С. Кончилось тем, что Снегопат - умер...
20. support 4450 27.10.23 04:57 Сейчас в теме
(18) это неправда!

Сергей, почему ты по жизни такой желчный?

Мы дали тебе уважение, статуетку...

)))
21. support 4450 27.10.23 04:58 Сейчас в теме
3. smit1c 106 25.10.23 14:43 Сейчас в теме
Наверное лучше JAVA или KOTLIN выучить, чем 1С.Исполнитель
SerVer1C; +1 Ответить
4. r.zdorkin 25.10.23 20:56 Сейчас в теме
22. JohnyDeath 301 27.10.23 08:47 Сейчас в теме
(3) люблю такие комментарии. Открываешь местное интернет-издание, где говорится о том, что администрация запустила в центре города красивый фонтан, смотришь комментарии, а там сплошное: "Лучше бы у нас во дворе качели поставили", "Лучше бы пенсионерам деньги раздали", "Лучше бы ..."
chernyakai; kembrik; ZhokhovM; dmpas; brr; olegtymko; SerVer1C; Oculta; +8 Ответить
23. kembrik 10 27.10.23 10:29 Сейчас в теме
Спешу добавить, что буквально вот вот (а именно 24.10.2023) была выпущена новая (но пока тестовая) версия Исполнителя 4.0 где еще насыпали немного вкусностей (Методы в структуры например)
24. starik-2005 3046 27.10.23 12:28 Сейчас в теме
(23)
Исполнителя 4.0
Кстати, на сайте 1С в что нового только 3.0. Есть сцылка?
26. Xershi 1493 21.04.24 16:47 Сейчас в теме
Значит работа строится по принципу ставим исполнитель. Программно сохраняем скрипт. Далее через код в 1с вызываем строку скрипта через выполнить команду?
Выходит что да, головная боль написать этот скрипт.
Но зато перебирая ос получается кросплатформмено.
Оставьте свое сообщение