Обслуживание и техническая поддержка
Мы следим, чтобы ваши действующие программы оставались актуальными, безопасными и работали без перебоев.
Что мы предлагаем
- Обновления безопасности
- Мониторинг производительности
- Регулярное резервное копирование
Зачем нужны обслуживание и техническая поддержка?
Обслуживание и техническая поддержка — это весь комплекс регулярных работ, благодаря которым действующий сайт и программы остаются актуальными, безопасными и работоспособными. В день запуска сайт выглядит законченным, но программные компоненты, серверная среда, браузеры и угрозы безопасности продолжают меняться каждый день.
Система без обслуживания обычно портится не внезапно, а постепенно. Сначала один из плагинов начинает выдавать предупреждения, потом форма обратной связи перестает отправлять письма, а однажды через уязвимость в необновленном компоненте на сайт попадает вредоносный код. Регулярное обслуживание сайта и программного обеспечения позволяет заметить эти мелкие проблемы, пока они не выросли.
Что меняется после запуска?
- Программные компоненты: выходят новые версии и патчи безопасности для используемых фреймворков, плагинов и библиотек.
- Среда выполнения: заканчиваются сроки официальной поддержки сред вроде PHP или Node.js и версий баз данных.
- Внешние сервисы: сервисы оплаты, доставки, карт или почты обновляют свои API и закрывают старые версии.
- Браузеры и устройства: новые версии браузеров и размеры экранов могут повлиять на внешний вид.
- Контент и данные: по мере роста сайта база данных раздувается, накапливаются изображения, страницы могут замедляться.
Для кого это важно?
Обслуживания требует любая действующая система, но в некоторых случаях обслуживание и техническая поддержка слишком важны, чтобы ими пренебрегать:
- Компании, которые принимают через сайт заказы, бронирования или заявки.
- Индивидуальные программы и панели управления, где хранятся данные клиентов или сотрудников.
- Компании без собственной команды разработчиков, которые расстались с командой, сделавшей сайт.
- Сайты, где используется много плагинов или интеграций с внешними сервисами.
Внутри компании или снаружи?
Компании с собственной командой разработки могут вести обслуживание внутри; тогда внешняя поддержка может ограничиваться областью, в которой команда не специализируется: сервером, безопасностью или определенной технологией. Если технической команды нет, обслуживание чаще всего достается тому, кто делал сайт, или не достается никому. Главное, чтобы было четко понятно, кто за него отвечает.
Обслуживание сайта и программного обеспечения
Обслуживание и техническая поддержка охватывают системы двух разных типов, и потребности у каждой свои. Корпоративный сайт на готовой системе управления контентом и приложение, написанное специально под ваш бизнес, обслуживаются по-разному.
Обслуживание сайта
На сайтах, созданных на системах управления контентом вроде WordPress, обслуживание строится вокруг обновлений ядра, темы и плагинов. Часть этих обновлений закрывает уязвимости, но любое обновление несет и риск несовместимости. Поэтому обслуживание сайта — это не просто нажатие кнопки «Обновить», а сначала проверка обновления на тестовой копии, а затем проверка основных функций сайта.
В эту работу входят также удаление неиспользуемых плагинов, проверка учетных записей администраторов и контроль того, что формы обратной связи действительно отправляют письма. Официальные руководства по обновлениям и безопасности есть в документации WordPress. Если вы думаете об обновлении корпоративного сайта, загляните в наши услуги по корпоративному веб-дизайну.
Периодические проверки при обслуживании сайта
Помимо обновлений, в рамках обслуживания сайта с определенной периодичностью нужно просматривать следующее:
- Доходят ли формы обратной связи, заявок на предложение и анкет.
- Работают ли от начала до конца шаги оплаты и корзины, если они есть.
- Битые ссылки и страницы, которые не найдены.
- Ошибки сканирования и индексации, которые видны в Google Search Console.
- Учетные записи администраторов, неиспользуемые пользователи и порядок с паролями.
- Свободное место на диске сервера и повторяющиеся предупреждения в журналах ошибок.
Обслуживание программного обеспечения
В веб-приложениях индивидуальной разработки, мобильных приложениях и SaaS-продуктах обслуживание программного обеспечения охватывает более широкую область. Основные задачи здесь: отслеживать обновления безопасности используемого фреймворка и библиотек, переводить среду выполнения на поддерживаемые версии, обслуживать базу данных и подстраиваться под изменения во внешних сервисах.
В мобильных приложениях к этому добавляются обновления операционной системы и изменения правил магазинов приложений; об этом мы отдельно рассказали на странице разработки мобильных приложений.
Управление зависимостями и версиями
Современное приложение опирается на десятки пакетов с открытым кодом, которые разработаны другими людьми. Чтобы при обслуживании программного обеспечения отслеживать уязвимости, о которых объявляют в этих пакетах, можно использовать средства автоматического сканирования. Небольшие обновления версий обычно проходят без проблем, а переход фреймворка на новую основную версию может потребовать изменений в коде; мы советуем не откладывать такие переходы на последний момент, а планировать их как отдельную работу.
То же касается среды выполнения. Каждая версия сред вроде PHP получает обновления безопасности в течение определенного срока; когда он истекает, официальных исправлений для найденных в этой версии уязвимостей уже не выходит. При переходе со старой версии на новую нужно проверить совместимость кода, поэтому такие переходы мы заранее закладываем в график обслуживания программного обеспечения.
Четыре типа обслуживания
В программной инженерии работы по обслуживанию обычно делят на четыре группы:
- Корректирующее обслуживание: исправление возникающих ошибок.
- Адаптивное обслуживание: приспособление системы к новым условиям операционной системы, браузера, сервера или внешнего сервиса.
- Профилактическое обслуживание: улучшение мест, которые еще не создавали проблем, но несут риск.
- Совершенствующее обслуживание: развитие существующих функций в соответствии с потребностями пользователей.
Какой вес в обслуживании программного обеспечения получит каждая группа, зависит от вашей системы. В только что запущенном приложении на первый план выходит корректирующее обслуживание, а в системе, которая работает давно, больше места чаще всего занимают адаптивные и профилактические работы.
Что делается в рамках обслуживания и технической поддержки?
Объем зависит от системы, но хорошо выстроенное обслуживание охватывает перечисленные ниже направления. Какие работы и с какой периодичностью нужны, мы определяем вместе с вами после изучения вашей системы.
Обновления безопасности
Об уязвимостях в программных компонентах обычно объявляют публично, и эти объявления отслеживают и злоумышленники. Мы регулярно следим за обновлениями, расставляем приоритеты для критичных и проверяем их перед запуском в рабочую систему. Список OWASP Top 10, в котором перечислены самые частые риски веб-приложений, — один из источников, к которым мы обращаемся при проверках безопасности.
Мониторинг производительности
Средства мониторинга, регулярно проверяющие, доступен ли сайт, помогают заметить сбои раньше пользователей. Помимо этого, нужно следить за временем открытия страниц, нагрузкой на сервер, журналами ошибок и медленными запросами к базе данных. Поскольку производительность чаще всего падает постепенно, замеры в определенные периоды и сравнение с предыдущими помогают увидеть проблему на раннем этапе.
В замерах нужно смотреть не только на сервер, но и на то, как сайт воспринимает пользователь. Показатели, которые Google называет Core Web Vitals, измеряют, как быстро загружается основное содержимое страницы, как быстро она реагирует на действия и насколько неожиданно сдвигается контент.
Регулярное резервное копирование
Резервная копия полезна, только если ее можно восстановить. По общепринятому подходу 3-2-1 хранятся три копии данных на двух разных носителях, причем одна копия лежит в другом месте. Мы считаем частью обслуживания и технической поддержки не только создание копий, но и их проверку пробным восстановлением через определенные промежутки времени.
Частота резервного копирования зависит от того, как часто система меняется. Потребности интернет-магазина, который принимает заказы каждый день, и корпоративного сайта, обновляемого раз в месяц, неодинаковы. Стоит также учитывать, что базу данных и файлы копируют отдельно, копии не должны храниться на том же сервере, а доступ к ним нужно ограничивать.
Улучшение производительности
Если мониторинг показал проблему, следующий шаг — улучшение. Оптимизация больших изображений, пересмотр настроек кэша, удаление лишних плагинов и скриптов и очистка раздутых таблиц базы данных — частые приемы обслуживания сайта. В индивидуальных программах на первый план выходят разбор медленных запросов и вынос тяжелых задач в фоновый режим.
Домен, SSL и сервер
Домен или SSL-сертификат с истекшим сроком могут за одну ночь превратить безупречно работающий сайт в недоступный или в такой, который в браузере показывает предупреждение «небезопасно». Отслеживание продления домена и сертификата, свободного места на диске сервера и обновлений операционной системы — незаметная, но важная часть обслуживания сайта.
Регулярная отчетность
Если обслуживание не видно, это не значит, что его не делают; но знать, что именно сделано, — ваше право. Мы регулярно отчитываемся об установленных обновлениях, выявленных рисках, состоянии резервных копий и рекомендуемых улучшениях. На основе этих отчетов вместе решается, какие работы поставить в приоритет на следующий период.
Передача системы, созданной другой командой
Систему, обслуживание которой вы хотите заказать, могло сделать другое агентство или разработчик-фрилансер. В таком случае первый шаг — изучить систему: обновление, сделанное без понимания того, что и как устроено, может привести к неожиданным последствиям. Прежде чем начать обслуживание и техническую поддержку системы, полученной от другой команды, мы проводим первичный аудит:
- Доступы: список доступов к серверу, домену, панели хостинга, репозиторию кода и учетным записям администраторов.
- Инвентаризация: используемые фреймворк, плагины, библиотеки и их версии.
- Проверка рисков: компоненты с закончившейся поддержкой, известные уязвимости, слабые пароли, оставленные открытыми тестовые страницы.
- Состояние копий: наличие, актуальность и возможность восстановления существующих резервных копий.
- Документы: заметки по установке и описания индивидуальных доработок, если они есть.
При передаче мы советуем пересмотреть и порядок доступов. Вместо одной учетной записи администратора на всех лучше, чтобы каждый входил под своим именем, доступ ушедших сотрудников закрывался, на критичных учетных записях включалась двухэтапная проверка, а все доступы были перечислены в надежном месте внутри компании: это заранее убирает значительную часть последующих проблем.
По итогам аудита мы сообщаем вам о состоянии системы, о местах, где нужно вмешаться срочно, и об улучшениях, рекомендуемых на длительную перспективу. Иногда самая верная рекомендация — не поддерживать устаревшую структуру, а поэтапно ее обновить.
Как идет поддержка, когда возникает проблема?
Техническая поддержка дополняет плановую часть обслуживания и рассчитана на неожиданные ситуации. От того, как действовать, когда форма перестала работать, страница оплаты выдает ошибку или сайт не открывается, зависит, будет ли проблема решена окончательно. Наш общий подход состоит из таких шагов:
- Понять ситуацию: выясняем, когда началась проблема, кого она затрагивает и повторяется ли.
- Ограничить влияние: при необходимости временно отключаем проблемную функцию или возвращаемся к последней надежной версии.
- Найти первопричину: изучаем журналы ошибок и последние изменения и ищем истинный источник проблемы.
- Постоянное решение: проверяем исправление в тестовой среде и переносим его в рабочую систему.
- Запись и профилактика: фиксируем, что произошло и что было сделано, и предлагаем меры, которые не дадут похожей проблеме повториться.
Если произошел инцидент безопасности
Если вы заметили, что на ваш сайт внедрили вредоносный код или что был несанкционированный доступ, одной очистки видимых признаков недостаточно. Если не закрыть путь, которым вошел злоумышленник, проблема быстро повторится. В таком случае нужно вернуться к чистой резервной копии, сменить все пароли и ключи доступа, найти и закрыть точку входа, а если затронуты персональные данные, оценить юридические обязательства вместе с вашим юристом.
Важно также после закрытия инцидента зафиксировать произошедшее в коротком письменном резюме. Оно покажет, какой меры не хватало, и станет основанием для обновления плана обслуживания.
Как составить эффективную заявку в поддержку?
Информация, которую вы указываете при описании проблемы, напрямую сокращает путь к решению. В заявке в поддержку очень полезны такие сведения:
- Адрес страницы или название экрана, где проявилась проблема.
- Время, когда проблему заметили впервые.
- Что вы пытались сделать, когда столкнулись с проблемой, и какой результат ожидали.
- Скриншот сообщения об ошибке, если оно есть.
- Устройство и браузер, которыми вы пользовались.
Журнал изменений
Когда в системе записано, что, когда и зачем менялось, это самая полезная информация на случай проблемы. Хранение изменений кода в системе контроля версий и запись изменений сервера и настроек в коротких заметках облегчают и поиск источника проблемы, и возврат к предыдущему состоянию при необходимости.
Граница между обслуживанием и новой разработкой
Исправление ошибок и добавление новых функций — разные задачи. Обслуживание и техническая поддержка нацелены на то, чтобы поддерживать систему в здоровом состоянии с сегодняшними функциями; новый модуль, страница или интеграция — это отдельный запрос на разработку. Если обсудить это различие заранее, ожидания будут ясны, а объем обслуживания не станет размытым.
От чего зависит объем работ и частые ошибки
Потребность в обслуживании и технической поддержке у каждой системы своя. При определении объема работ мы смотрим на следующее:
- Тип системы: сайт на системе управления контентом, индивидуальная программа или мобильное приложение.
- Число используемых компонентов, плагинов и внешних сервисов.
- Критичность системы для бизнеса: влияет ли сбой напрямую на продажи или операции.
- Как часто меняются данные и какая из-за этого нужна частота резервного копирования.
- Кто управляет средой хостинга.
- Ожидаются ли помимо планового обслуживания запросы на небольшие улучшения.
Как составляется план обслуживания?
Работу по обслуживанию и технической поддержке мы обычно начинаем в таком порядке:
- Первичный аудит: выясняем компоненты системы, доступы, резервные копии и известные проблемы.
- Ранжирование рисков: расставляем находки по срочности и влиянию на бизнес.
- График периодических работ: определяем, с какой периодичностью проводятся обновления, проверка копий и пересмотры.
- Настройка мониторинга: включаем мониторинг доступности, ошибок и производительности.
- Отчетность и пересмотр: отчитываемся о проделанной работе и обновляем план под меняющиеся потребности системы.
Частые ошибки
- Подход «работает — не трогай»: необновленные компоненты со временем превращаются в уязвимости, и в итоге требуется большое и рискованное обновление.
- Обновления прямо в рабочей системе: непроверенное обновление может сделать сайт непригодным для использования.
- Ни разу не проверять резервную копию: в нужный момент выясняется, что копия неполная или повреждена.
- Оставлять данные доступа у одного человека: если с ним не связаться, никто не сможет вмешаться в систему.
- Не следить за сроками домена и сертификата: небольшая оплошность с продлением может привести к полной недоступности сайта.
Частые вопросы
Для каких систем предоставляются обслуживание и техническая поддержка?
Обслуживание и техническая поддержка возможны для корпоративных сайтов, интернет-магазинов, индивидуальных веб-приложений, мобильных приложений и SaaS-продуктов. Объем определяется типом системы и ее значением для бизнеса.
Наш сайт делала другая компания: возьметесь ли вы за его обслуживание?
Да, можем взяться. Сначала проводим первичную оценку, изучая систему и доступы, и сообщаем вам о текущем состоянии и рисках.
Как часто нужно обслуживать сайт?
Периодичность зависит от числа используемых сайтом компонентов, от того, как часто он обновляется, и от его значения для бизнеса. Обновления безопасности и резервные копии должны идти по регулярному графику, остальные проверки проводятся с подходящей для системы периодичностью.
Входит ли в обслуживание программного обеспечения добавление новых функций?
Обслуживание программного обеспечения сосредоточено на здоровой работе существующих функций системы. Добавление нового модуля или крупной функции обычно планируется как отдельная работа по разработке.
Что будет, если не заказывать обслуживание и техническую поддержку?
Система может какое-то время продолжать работать без проблем, но уязвимости в необновляемых компонентах и среды выполнения, у которых закончилась поддержка, со временем накапливают риск. Обслуживание и техническая поддержка позволяют работать с этими рисками планово и до того, как они вырастут.
Где нужно хранить резервные копии?
Хотя бы одну копию нужно хранить в месте, отличном от сервера, на котором работает сайт. Тогда проблема на сервере не затронет и резервные копии.
Давайте вместе оценим состояние вашей системы
Если вы не знаете, когда в последний раз обновлялись ваш сайт или программа, сейчас хороший повод это выяснить. Достаточно коротко описать вашу систему, чтобы мы вместе определили рамки обслуживания и технической поддержки. Связаться с нами можно через страницу контактов.
Другие услуги этого раздела
-
Индивидуальные веб-приложения Мы разрабатываем безопасные, быстрые и масштабируемые веб-приложения под ваши бизнес-процессы.
-
Разработка мобильных приложений Проектируем и разрабатываем удобные мобильные приложения для iOS и Android, выдержанные в языке вашего бренда.
-
Панели управления и отчетность Мы создаем панели, в которых вы можете управлять данными о клиентах, заказах и операциях с одного экрана.