Electron против нативных приложений — замеры памяти на бухгалтерской машине До: Electron-стек private working set, МБ Slack 420 Teams 620 Discord 310 Notion 450 −38% RAM После: нативка + браузер private working set, МБ Telegram 95 Контур.Толк 130 Trillian 60 Notion (web) 80 ITfresh · бухгалтерская фирма 32 РМ · Тверская · май 2026 · замеры на Core i3-10100, 8 ГБ DDR4-2666
Заменили четыре Electron-приложения на нативные — освободили 38% оперативной памяти на типовой бухгалтерской машине.
· 13 мин чтения · Семёнов Е.С., руководитель ITfresh

Electron против нативных приложений: замеры на 32 РМ бухгалтерии

Electron против нативных приложений: замеры на 32 РМ бухгалтерии

В бухгалтерской фирме с 32 рабочими местами на Тверской к нам обратились с классической жалобой: «компьютеры тормозят». Предыдущий подрядчик уже вынес вердикт: менять весь парк машин, а это 1,9 миллиона рублей! Мы, конечно, не стали сразу бежать за новыми ПК. Вместо этого вооружились Process Monitor, Resmon и perfmon. Замерили 14 приложений на двух разных конфигурациях, и что вы думаете? Нашли до смешного простое объяснение: у каждого пользователя в фоне беззастенчиво висели четыре Electron-приложения, и каждое из них тащило за собой собственный Chromium. А это, как вы понимаете, не шутки. Сейчас я поделюсь конкретными цифрами, расскажу, что мы в итоге снесли, на что заменили, и что оставили.

С чего началось: жалоба главбуха про «тормозит 1С»

Представьте: пятница вечер, звонит главбух. Вопрос прямо в лоб, без прелюдий: «Бухгалтерия открывает 1С по 12 секунд, отчёты собирает по полчаса, а программисты твердят одно – меняйте компьютеры. Это вообще нормально?!» Понятно, что дело пахнет керосином, тут шутки плохи. Мы договорились на понедельник, 09:30, но сразу решили: никаких предварительных закупок! Сперва надо разобраться. У клиента, кстати, 32 рабочих места, большей частью это Dell OptiPlex 3080 и 7080. Конфигурации такие: Core i3-10100 или i5-10500, 8 ГБ DDR4-2666 оперативки и SATA-SSD на 256 ГБ. Везде стоит Windows 10 22H2, и, само собой, всё это крутится на корпоративном домене.

В офисе, куда я приехал, первым делом отправился к трём бухгалтерам, чьи компьютеры были идентичны. Просто попросил каждую показать: а что у вас обычно запущено? И знаете, картина вырисовалась довольно типичная, даже забавная. У всех в трее обязательно висел Slack. У двоих к нему добавлялся Microsoft Teams Classic. А одна дама, представьте себе, держала запущенным даже Discord — для созвонов с подрядчиком по дизайну сайта, как она объяснила. Notion для внутренней документации? Само собой, был у каждого. И вишенка на торте: поверх всего этого — браузер с 8-14 открытыми вкладками, ну и куда же без 1С 8.3.24. Кстати, у главбуха список был ещё внушительнее: она каким-то чудом умудрялась вести таблицу разносов в формате markdown прямо в VS Code.

Первая прикидка по диспетчеру задач

Открываю диспетчер задач на компьютере главбуха, сортирую по использованию памяти. И что я вижу? Да первая же страница, процентов на 80, была забита строчками типа Slack.exe, Teams.exe, Discord.exe и Notion.exe! Каждое из этих приложений, заметьте, порождало от 4 до 7 отдельных процессов, и каждый такой процесс "держал" от 60 до 180 МБ оперативки. Только представьте: эти четыре «чатилки» в сумме отъедали 2,1 ГБ оперативной памяти! Добавьте сюда ещё 1,2 ГБ на браузер и 1,4 ГБ на саму 1С. Получается, из общих 8 ГБ системы оставалось в лучшем случае 800 МБ. Что делала Windows с остальным? Правильно, активно скидывала в файл подкачки, то есть свопила. Тут уже было понятно, что дальше разговор пойдёт серьёзный.

Методика замеров: Process Monitor, Resmon, perfmon

Нельзя же полагаться только на интуицию, верно? Поэтому я выделил целый день под тщательные замеры. Моя задача — снять подробную «карточку нагрузки» для каждого приложения, и притом в трёх разных режимах. Первый: сразу после запуска. Второй: через 30 минут активной работы. И третий: в простое, когда приложение фоново висит уже 2 часа. Замеры проводились на двух машинах. Первая, эталонная: Dell OptiPlex 7080 с Core i5-10500, 16 ГБ DDR4-2933 и NVMe Samsung PM981a на 512 ГБ. Вторая, типовая для клиента: Dell OptiPlex 3080 с Core i3-10100, 8 ГБ DDR4-2666 и SATA WD Blue на 256 ГБ. Важный момент: между каждым тестовым прогоном мы делали чистую перезагрузку и использовали стандартный профиль пользователя, чтобы исключить влияние посторонних факторов.

Инструменты, которые реально дают цифры

Ну а чтобы все замеры были максимально точными, я, конечно, использовал набор проверенных инструментов. Process Monitor от Sysinternals — незаменимый помощник, он показывал обращения к диску и реестру буквально посекундно. Resmon, или Resource Monitor, как его ещё называют, встроен прямо в Windows, и с его помощью было удобно следить за working set и hard faults. Ну а куда без perfmon? С правильной настройкой шаблона Performance Counter Set он позволял мне строить наглядные графики, отслеживая, как меняются показатели во времени. И знаете, вдобавок ко всему, я активно задействовал утилиту RAMMap. Она помогла мне понять, какие именно приложения цепко держат файловый кеш, не желая отдавать его системе, особенно в тот момент, когда нужно было запускать прожорливую 1С.

# Снимок памяти всех процессов в CSV для последующего анализа
Get-Process | Select-Object Name, Id, `
  @{N='PrivateMB';E={[math]::Round($_.PrivateMemorySize64/1MB,1)}}, `
  @{N='WorkingSetMB';E={[math]::Round($_.WorkingSet64/1MB,1)}}, `
  @{N='Handles';E={$_.HandleCount}}, `
  @{N='Threads';E={$_.Threads.Count}} `
  | Sort-Object PrivateMB -Descending `
  | Export-Csv -NoTypeInformation -Encoding UTF8 `
    C:\itfresh\bench\$(Get-Date -f yyyyMMdd-HHmm)-snapshot.csv

Чтобы получить максимально полную картину, я не просто запускал программы вручную. Я настроил специальный скрипт и через GPO добавил его в Scheduled Tasks на эталонной машине. Триггер срабатывал каждые 15 минут. Это позволило мне за один рабочий день собрать аж 32 снимка состояния системы! Потом эти данные я загонял в Power BI, строил красивые графики по каждому приложению и уже по ним выявлял устойчивые тренды, отбрасывая разовые всплески. И что было видно сразу? Классическая картина для всех Electron-приложений: сразу после запуска они «ели» 280-320 МБ, через час уже 460-580 МБ, а к концу дня спокойно добирались до 700-900 МБ. То есть память просто утекала, даже если приложение вообще не использовалось активно!

Таблица замеров: 14 приложений в двух конфигурациях

Ну вот, наконец-то, после трёх полноценных рабочих дней, которые я целиком посвятил замерам, у меня на руках была итоговая таблица. В ней — по три «снимка» для каждого приложения, и это, напомню, в каждой из наших двух тестовых сред. Чтобы было легче читать, я округлил все цифры до ближайших 10 МБ. Хотя, по правде сказать, разброс между разными запусками мог доходить от 5% до 12%. Важный момент: приложения в таблице я отсортировал по убыванию занятой памяти. Представленные ниже данные актуальны для конфигурации с 8 ГБ оперативки и сняты ровно через 30 минут после запуска каждого приложения.

Итак, вот какие цифры получились в итоге. Для каждого приложения я указываю потребление памяти сначала на 8 ГБ системе, потом на 16 ГБ. Готовы? * Microsoft Teams Classic (в режиме «фон + чат»): чудовищные 620 МБ на 8 ГБ, и 690 МБ на 16 ГБ. * Slack desktop: 420 МБ и 450 МБ соответственно. * Notion: 450 МБ и 480 МБ. * Discord: 310 МБ и 340 МБ. * VS Code (с девятью расширениями): 380 МБ и 410 МБ. * Postman: 290 МБ и 320 МБ. * WhatsApp Desktop: 230 МБ и 260 МБ. * Spotify: 210 МБ и 240 МБ. * Microsoft To Do: 180 МБ и 200 МБ. * GitHub Desktop: 170 МБ и 190 МБ. * Far Manager: всего 14 МБ на обеих конфигурациях. * Telegram Desktop: скромные 95 МБ и 110 МБ. * Trillian: 60 МБ и 70 МБ. * Контур.Толк: 130 МБ и 150 МБ.

Что бросилось в глаза в таблице

Эти замеры дали мне пищу для серьёзных размышлений и привели к трём ключевым выводам. Первый и самый очевидный: нативные приложения, вот вам примеры — Far Manager, Telegram Desktop на Qt, Trillian на собственном движке или Контур.Толк тоже на Qt, потребляют в 3-7 раз меньше памяти, чем их Electron-аналоги. И что самое важное? Функциональность у них при этом ничуть не хуже! Второй вывод: Electron-приложения на машинах с 16 ГБ оперативной памяти склонны «отъедать» чуть больше ресурсов. Почему? Да потому что система не так сильно их ограничивает, и они охотнее всё кешируют. Ну и третий, самый печальный, но предсказуемый итог: если на компьютере с 8 ГБ оперативки в фоне крутятся хотя бы пять Electron-приложений, они запросто сожрут 2,0-2,4 ГБ. Это неизбежно обрекает машину на бесконечный, мучительный свопинг.

Что мы убрали полностью, что заменили на нативку

После всех замеров мы, конечно, сели за стол переговоров. С нами были главбух и айти-куратор клиента. Должен сказать, решение родилось в совместном обсуждении. В итоге мы решили полностью отказаться от трёх приложений, которые были явными пожирателями ресурсов. Discord? Его использовал всего один сотрудник, и то крайне редко. Перевели его на Telegram — никаких проблем. Spotify вообще висел в фоне у восьми человек. Очевидно, не для работы, поэтому просто попросили слушать музыку через браузер или со своих телефонов. А Microsoft To Do? Он ведь просто дублировал функции Outlook, которым клиент и так уже активно пользовался! Смысл держать лишнее? Эти трое ушли. А ещё четыре приложения мы, конечно, заменили на их куда более лёгкие, нативные аналоги.

Чем заменили основные четыре

Давайте по порядку, что на что мы поменяли. Slack? Его полностью заменила связка Telegram Desktop для всех внутренних чатов, а для общения с подрядчиками мы завели специальный общий Telegram-канал. Microsoft Teams, этот монстр, уступил место Контур.Толку для комфортных созвонов, а для чатов тоже перешли на Telegram. С Notion поступили хитро. Само приложение мы оставили, но установили его только троим сотрудникам, тем, кто реально проводит по 4-6 часов в день, работая с проектной документацией. Остальным же 29 сотрудникам, кто Notion открывает изредка, мы просто добавили закладку в браузере, и она сама загружается при первом же клике. И последнее: у одного из разработчиков клиента стоял Postman. Его мы заменили на связку curl + bruno — это нативная альтернатива, написанная на Go, а главное — полностью без Electron.

# Снос Electron-приложений через GPO Software Removal + командная строка
# Список процессов и установщиков на удаление
$apps = @(
  'Microsoft Teams Classic',
  'Slack',
  'Discord',
  'Spotify',
  'Microsoft To Do'
)
foreach ($app in $apps) {
  $package = Get-AppxPackage -Name "*$app*"
  if ($package) {
    Remove-AppxPackage -Package $package.PackageFullName -ErrorAction SilentlyContinue
  }
  $msi = Get-WmiObject -Class Win32_Product `
    | Where-Object { $_.Name -like "*$app*" }
  if ($msi) {
    $msi.Uninstall() | Out-Null
  }
}
# Очистка остаточных папок в LocalAppData
Get-ChildItem "$env:LOCALAPPDATA" -Directory `
  | Where-Object { $_.Name -match 'Slack|Teams|Discord|Spotify|MicrosoftToDo' } `
  | Remove-Item -Recurse -Force -ErrorAction SilentlyContinue

Для такого массового внедрения мы не стали бегать к каждому компьютеру вручную. Вместо этого прогнали специальный скрипт через PsExec сразу на всех 32 машинах, управившись буквально за один вечер. Что ещё пришлось сделать? Мы откатили старую групповую политику, которая когда-то была настроена для пилотного запуска Teams. Представляете, она всё ещё была активна, и Teams сам подтягивался обратно при каждом новом профиле! А вот на замену этой устаревшей политике пришла новая GPO, которая теперь автоматически устанавливает Telegram Desktop (причём с нашим кастомным дефолтным конфигом) и, конечно, агент Контур.Толка, который берётся из локального дистрибутива.

Результат: минус 38% оперативки, минус 2,4 секунды на запуск 1С

Прошло всего две недели после всех этих миграций, и я снова приехал, чтобы провести контрольные замеры. И знаете, результаты превзошли все ожидания! Средний объём занятой оперативки на обычной бухгалтерской машине просто рухнул: с 6,3 ГБ до впечатляющих 3,9 ГБ. Вы только вдумайтесь, это целых минус 38% от рабочего объёма! Показатель Hard page faults в минуту, который так тормозил систему, тоже здорово просел — с 240-310 до комфортных 40-60. А что насчёт 1С? Время «холодного» запуска 1С 8.3.24 – то есть от двойного клика до появления заветного «Журнала операций» – сократилось с 9,8 секунды до 7,4 секунды. Это, между прочим, выигрыш в 2,4 секунды на каждый старт! Разве это не прекрасно?

Откуда взялось ускорение 1С — не от RAM напрямую

Кстати, сам по себе процесс 1cestart.exe никогда не был особо прожорливым, занимая максимум 700 МБ оперативки. Но откуда же тогда такое ускорение? Я разобрался: оно произошло благодаря двум очень важным эффектам. Во-первых, у системы наконец-то появился жирный, свободный файловый кеш объёмом 1,8-2,4 ГБ. Что это значит на практике? А то, что все необходимые dll-ки 1С при запуске теперь читались прямо из быстрой оперативной памяти, а не тормозили, медленно вытягиваясь с видавшего виды SATA-диска. Process Monitor это показал очень наглядно: чтение с диска при старте 1С рухнуло с 380 МБ до ничтожных 6 МБ! И во-вторых, исчезло то ужасное давление на page file. Количество hard page faults заметно снизилось, и процесс 1С больше не висел мёртвым грузом, мучительно ожидая, пока система наконец-то разберётся и отсвопит данные других приложений.

Что мы НЕ стали трогать и почему

Итак, VS Code. Мы решили не трогать его у главбуха и наших двух разработчиков клиента. Да, я сразу предупредил: VS Code — это тоже Electron, а значит, тяжеловесный. Но что делать? Пока нет по-настоящему достойных нативных аналогов, которые бы «из коробки» поддерживали все нужные расширения для 1С и Bitrix. Взять тот же Helix или Neovim – они требуют совершенно другого уровня подготовки, это не для всех. Зато мы как следует его «прокачали»! Отключили по 9 лишних расширений у каждого разработчика. Ограничили TypeScript-сервер тремя гигабайтами. Настроили лимит вкладок: не больше восьми одновременно (через workbench.editor.limit.value=8). И, конечно, убрали автоматический IntelliSense для Markdown-файлов. И вот результат: после всех этих настроек VS Code на машине разработчика стал весить всего 380 МБ! А было-то 1,1 ГБ. Фантастика, правда?

Notion-клиент мы тоже оставили, но только троим сотрудникам, которые ежедневно работают с проектной документацией. Почему? Потому что эти ребята постоянно ведут там базы по 4000 страниц! Попробовать заменить клиент на простую браузерную вкладку? Это был бы настоящий регресс для них. Ведь нативный клиент Notion, в отличие от веб-версии, отлично кэширует базы локально и позволяет работать даже офлайн. На машинах с 8 ГБ памяти такое, конечно, критично. Но у наших троих пользователей — 16-гиговые машины на Core i7-11700, так что нагрузка для них вообще не проблема.

Личное мнение про Electron в корпсреде

Слушайте, по моему опыту, Electron — это вовсе не то «зло», каким его иногда рисуют на Хабре. Это всего лишь инструмент, и у него, как у любого инструмента, есть свои плюсы и минусы, свой компромисс. Разработчик может собрать приложение сразу под три операционки всего за пару месяцев! А под три разных нативных стека на это уйдёт все восемь. Удобно? Безусловно. Но за это приходится платить: каждая машина пользователя будет отдавать по 200-400 МБ оперативки. Если у сотрудника 32 ГБ памяти, вообще без проблем, пусть работает. А если всего 8 ГБ, да ещё и бухгалтерия висит в фоне? Вот тогда Electron начинает натурально сжирать ваши деньги! Сначала через жуткие тормоза и свопинг, а потом — через неизбежную покупку нового железа. Поэтому наш железный принцип: всегда всё измеряйте, не гадайте на кофейной гуще!

Стоимость работы и окупаемость для клиента

Вся эта история заняла у нас 9 дней, и клиенту она обошлась в 142 000 рублей. Три дня ушли на кропотливые замеры и детальную аналитику — тут спешить нельзя. Два дня мы провели в согласованиях со всеми: и с пользователями, и с внешними подрядчиками (помню, для общения со студией кто-то даже Slack использовал). Один день потратили на подготовку GPO и нужных скриптов. Ещё два дня — на пилотное внедрение в одном из отделов, чтобы всё отладить. И, наконец, один финальный день — на массовое развёртывание и моё сопровождение сразу после запуска. К этой сумме добавилось ещё 18 000 рублей — это годовые лицензии на Контур.Толк для всех 32 рабочих мест. Всё честно и прозрачно.

И знаете, что самое классное? Всё это окупилось в первый же месяц! Главбух просто колоссально сэкономила, отменив запланированную закупку новых компьютеров на целых 1,9 миллиона рублей! Старенькие i3-10100, получив свои драгоценные 2,4 ГБ оперативки, теперь снова летают и в 1С, и в Excel. А если прибавить дополнительную экономию? Посчитаем: 2,4 секунды на каждом старте 1С, умножаем на 18 запусков в день, и всё это на 32 сотрудника... Получаем целых 23 минуты сэкономленного рабочего времени ЕЖЕДНЕВНО! По нашей внутренней статистике, любая типовая бухгалтерия с 25-35 рабочими местами обычно окупает такую работу всего за 4-6 недель. Почему так быстро? Потому что отложенная замена всего компьютерного парка — это и есть самая что ни на есть колоссальная экономия.

FAQ: что чаще всего спрашивают клиенты

Сколько на самом деле жрёт Electron-приложение в простое?

Итак, что показали наши замеры на бухгалтерских машинах клиента? Цифры говорят сами за себя. Slack в простое отъедает 380-460 МБ private working set. Teams Classic — это уже 520-700 МБ. Discord полегче, 280-350 МБ. А Notion — 410-480 МБ. VS Code тут выделяется: всего 220-280 МБ. Почему? У него один Chromium-процесс с одним окном, а не три-четыре, как у других. И заметьте, это всё в идеальных условиях! Когда пользователь просто ушёл на обед, и приложения тихонько висят в фоне. А теперь представьте: машина с Core i3-10100 и всего 8 ГБ оперативки. Три таких Electron-приложения запущены одновременно — и всё! Это гарантированный свопинг, друзья. Ваша 1С стартует уже не за привычные 6 секунд, а за все 11. Почувствуйте разницу!

Чем заменили Slack, чтобы не потерять переписку?

Slack мы полностью заменили. Для внутренних чатов теперь используется Telegram Desktop — просто и привычно. А для созвонов — Контур.Толк. Кстати, он не на Electron, у него собственная оболочка на Qt, что уже плюс к легковесности! Всех внешних подрядчиков, с кем раньше общались в Slack, мы оперативно перевели в один общий Telegram-канал. Сама миграция заняла 5 рабочих дней. Большая часть времени ушла на перенос истории из 14 каналов в архив Notion и на поиск контактов тех самых 23 подрядчиков. Итог? Память на машинах освободилась мгновенно, ни одна переписка не потерялась. Но самое главное: у бухгалтеров теперь всего один мессенджер, которым они пользуются и на телефоне, и на компьютере! Удобно, правда?

Notion-клиент действительно стоит сносить?

Мой совет простой: если Notion вам нужен лишь изредка, смело сносите его клиент и пользуйтесь через браузер! Почему? Браузер-то держит всего одну вкладку Chromium. А нативное приложение Notion постоянно запускает свой собственный Chromium-процесс, к тому же без остановки кеширует все базы. Нашему клиенту мы оставили нативный Notion только у трёх сотрудников — тех, кто реально сидит в проектной документации по 4-6 часов в день. А вот остальные 29 рабочих мест теперь открывают Notion через простую закладку в браузере. И знаете, что это дало? Суммарную экономию порядка 12-15 ГБ памяти по всему парку! Впечатляет, да?

VS Code тоже Electron — его тоже сносить?

VS Code мы, разумеется, не трогали. У бухгалтеров его нет, но у двух разработчиков клиента (которые работают с 1С и Bitrix) без него никак — он им жизненно необходим. Зато мы как следует его «прокачали»! Отключили девять неиспользуемых расширений. Поставили строгий лимит на TypeScript-сервер — всего 3 ГБ из потенциальных 8 ГБ, которые он мог бы съесть. И, конечно, ограничили количество одновременно открытых вкладок через настройку workbench.editor.limit.value=8, не больше восьми. Результат? После всех этих манипуляций VS Code на машине разработчика теперь занимает всего 380 МБ, а не 1,1 ГБ, как было раньше. Кстати, если ваш VS Code вдруг начинает разрастаться до 2 ГБ и больше — почти всегда это проделки расширений. Срочно проверьте их!

Через сколько окупится замена Electron-приложений?

У этого клиента, в бухгалтерии с 32 рабочими местами, наша работа заняла 9 дней и стоила 142 000 рублей. И эта затея окупилась уже буквально при следующем плановом обновлении компьютерного парка! Главбух, увидев, сколько оперативки освободилось, смело отказалась от планов по закупке 14 новых машин. А это, на минуточку, целых 1,9 миллиона рублей экономии! Старенькие i3 с 8 ГБ теперь прекрасно справляются со своими задачами. И не забывайте про классный дополнительный бонус: время открытия 1С сократилось на 2,4 секунды. Умножаем это на 32 человека, на 18 запусков в день — и получаем целых 23 минуты сэкономленного рабочего времени ежедневно! По нашей внутренней статистике, обычно типовая бухгалтерия на 25-35 рабочих мест окупает такую работу всего за 4-6 недель. Просто вдумайтесь в эти цифры.

Итог

Вот вам секрет: когда кто-то жалуется «компы тормозят, надо менять», в 60% случаев причина — вовсе не износ железа. Это банальный свопинг из-за фоновых Electron-приложений! Подумайте: полтора дня на замеры и неделя на миграцию обойдутся вам куда дешевле, чем 1,9 миллиона рублей на новые машины. Так что наш главный совет: сначала замерьте всё с помощью perfmon, а уж потом идите в магазин. Почти всегда можно освободить 2-3 ГБ оперативной памяти всего за 9 дней работы инженера. Не выбрасывайте деньги на ветер!

Похожая задача в вашей компании?

Расскажите, что у вас сейчас — пришлю план работ и оценку в течение рабочего дня.

Написать в Telegram  или  +7 903 729-62-41

Семёнов Е.С., руководитель ITfresh

Подпишитесь на рассылку ITfresh

Хотите быть в курсе? Раз в неделю мы делимся практическими гайдами специально для руководителей IT и сисадминов. Здесь вы найдете всё: от безопасности и тонкостей 1С до советов по миграциям, резервным копиям и, конечно, реальным лайфхакам из наших проектов. Подпишитесь, чтобы не пропустить ценные знания!

Реквизиты оператора персональных данных

ООО «АЙТИ-ФРЕШ», ИНН 7719418495, КПП 771901001. Юридический адрес: 105523, г. Москва, Щёлковское шоссе, д. 92, корп. 7. Контакт: info@itfresh.ru, +7 903 729-62-41. Оператор обрабатывает e-mail подписчика в целях рассылки информационных и рекламных материалов до момента отзыва согласия.