“Дорожные” расходы на пути корпоративного сайта
Мы подошли к моменту, когда надо поговорить, пожалуй, о самом болезненном вопросе, связанном с работой сайта. Мы затронем тему “Кто виноват?”, если сайт вдруг перестал работать или работает “неправильно”, “медленно” и т. д. Интернет-технологии – вещь достаточно сложная и многообразная, поэтому возможны самые разнообразные причины, вызывающие перебои в работе сайта. Мы постараемся рассказать о них и, возможно, предложить какие-то пути решения.
Всего на всех не хватит
В предыдущей статье мы рассказывали о вариантах “размещения сайта в Интернет” вместе с их основными плюсами и минусами. Теперь мы постараемся рассказать о некоторых из них, а также о других сложностях в размещении сайтов подробнее.
Самый незащищенный от проблем вариант размещения сайтов – это разделяемый хостинг. Основные причины, как мы уже писали, заложены в самом принципе разделяемого хостинга, который больше всего напоминает перетягивание каната. При покупке разделяемого хостинга Вам гарантируется конкретный объем дискового пространства, иногда – максимально доступный размер оперативной памяти и перечень установленного программного обеспечения. Все остальные ресурсы, предоставляемые хостинговой компанией, фактически, являются общими с другими клиентами.
Представьте себе прекрасную коммунальную квартиру, в которой, тем не менее, один душ на всех. При этом все честно: душ, указанный в спецификации квартиры, присутствует, но вот его реальное использование – это очередь и скандалы. Подобное наблюдается и с разделяемым хостингом: еще позавчера душа (читаем, “оперативной памяти”) хватало на всех, а вчера к соседям приехали родственники из пустынных областей Африки, для которых душ – это волшебное чудо, и вот они уже второй день безвылазно наслаждаются водяными струями, при этом все прежние жильцы стоят под дверью.
Ребром встает вопрос – что делать в подобной ситуации? Ответ тот же, что и с квартирой, – обращаться в службу поддержки хостинга и скандалить, требуя недостающие ресурсы назад (требуем выселить непрописанных жильцов!), либо требуя переноса своего сайта на менее загруженный сервер (требуем переезда в другую квартиру без гостей из Африки!). К сожалению, практика показывает, что других вариантов нет. Техническая поддержка даже самого прекрасного хостинга сначала будет “кормить завтраками” (да-да, мы занимаемся решением этой проблемы, уже завтра все будет хорошо!), находить тысячи достоверных причин (которые объяснят Вам, что гости из Африки здесь совсем не при чем, и вообще их на самом деле нет), однако при определенной настойчивости, переезд Вам все-таки обеспечат.
Щит и меч
Если Вы решили, что отказ от разделяемого хостинга в пользу своего выделенного сервера решит все вопросы, то это не совсем так. Здесь на первое место выходят проблемы другого порядка. Вероятно, Вы неоднократно читали в прессе сообщения о взломе того или иного сайта, о хакерских атаках и тому подобных вещах. К сожалению, вынуждены констатировать, что это все правда: Интернет, будучи системой с затруднительной идентификацией пользователей, представляет собой питательную среду для всякого рода хакеров, хулиганов и просто нехороших людей.
Приходится считаться с тем, что Ваши сервер и сайт будут подвергаться постоянным атакам как со стороны профессиональных хакеров, так и стороны “подростков” (реальных и социальных), прочитавших публичную информацию о той или иной уязвимости используемого Вами программного обеспечения.
Первыми, - как правило, движет либо желание “сломать” сайт конкретной компании, если Ваш бизнес достаточно известен, либо желание использовать ресурсы Вашего сервера для последующих несанкционированных операций (чаще всего взломанные сервера потом используются для рассылки спама). “Подростки” в подавляющем большинстве случаев занимаются попытками взлома из желания самоутверждения и простого хулиганства, тем более, что для этого совершенно не нужна какая-то особая “хакерская” квалификация. Достаточно найти информацию о потенциальных “дырах” в защите того или иного программного обеспечения на специализированных сайтах, а дальше просто действовать по инструкции в режиме “а, может, повезет и тут сломать?”.
В реальной жизни, если витрину Вашего магазина каждый вечер кирпичом разбивают хулиганы, Вы вряд ли будете считать виноватыми строителей, однако в случае с сайтами уже приходилось сталкиваться с жалобами клиентов, считающих разработчиков сайта ответственными за подобные взломы. Можно понять обиду клиента, но глупо было бы брать на себя ответственность за хулиганские действия третьей стороны.
Остается добавить, что, даже если исключить вероятность реального взлома, сами попытки уже могут создать серьезную нагрузку на сервер, что скажется на работе Вашего сайта. Именно поэтому администратор Вашего сервера должен быть специалистом, разбирающимся в вопросах сетевой безопасности. Увы, решить эти вопросы раз и навсегда невозможно.
Подобная борьба - это постоянный процесс, в котором хакеры пытаются найти новые возможности, а специалисты по безопасности пытаются эти возможности заблокировать. Ваши постоянные затраты на администратора - это и есть Ваши инвестиции в свою защиту.
Аварии “на дорогах”
Подобные неприятности относятся к форс-мажорным обстоятельствам. Речь идет о проблемах с подключениями к серверу, на котором расположен сайт, а также о проблемах с подключениями к Интернет. Они не относятся непосредственно к самому сайту – это проблемы технологического окружения, которые, однако, с точки зрения эффективной работы сайта могут приносить Вам убытки или дополнительные расходы.
Возвращаясь к аналогии с магазином, представьте себе, что подрядчик сделал Вам прекрасный магазин, однако из-за прорыва канализации в соседнем здании аварийные службы перекрыли все движение по улице, и Ваш магазин остался без посетителей на неопределенное время ремонта. Вы несете убытки, а сделать ничего нельзя. Грустная, но вполне реальная ситуация, которая может случиться и с сайтом. Причем тут дело также усугубляется тем, что “проблемы с дорогой” могут быть не только у покупателей, но и сотрудников магазина. Речь идет о проблемах с доступом в Интернет для Ваших сотрудников, отвечающих за работу сайта.
В реальной жизни такое случается не часто, но все-таки, если напрячься, можно представить себе, что Вы возите всех сотрудников на работу по утрам из поселка за городом специальным автобусом, а вечером отвозите обратно. И вот надо ж было такому случиться, что как раз сегодня автобус по дороге совершенно сломался, и ни один сотрудник до магазина не доехал. Если в реальности можно было бы достаточно быстро найти замену автобусу (пускай, понеся при этом дополнительные расходы), то в случае с Интернет, особенно в Саратове, технических возможностей для быстрой смены провайдера не так много, да и делается это, к сожалению, не так быстро.
Лебедь, рак и щука
Менеджерам, которые впервые сталкиваются с необходимостью запустить сайт компании, сложнее всего бывает найти центр ответственности при возникновении той или иной внештатной ситуации. Иногда сложно понять, кто виноват. К сожалению, в данном случае, это скорее специфика IT-сферы, отличающейся сложными взаимосвязями в техническом и юридическом аспектах.
Например, в обычной практике “в сайте” участвуют как минимум следующие стороны: заказчик, подрядчик (делает работы по созданию и внедрению сайта), разработчик системы управления сайтом (разрабатывает продукт, на базе которого подрядчик делает конкретный сайт), хостинговая компания (предоставляет технические услуги, необходимые для размещения в Интернет) и магистральный провайдер (подключает к Интернет сервера хостинговой компании).
Формально договор о разработке подписывается двумя сторонами: заказчиком и подрядчиком. Однако, фактически даже в этом договоре все равно присутствует упоминание продукта третьей стороны (разработчика системы управления сайтом) с ограниченными гарантиями. При этом ответственность за работу сайта уже начинает “размываться”.
Подрядчик в свою очередь связан договором с разработчиком системы управления сайтом, в котором также ограничена гарантия разработчика. Для этого есть конкретная причина – разработчик системы управления сайтом не может брать на себя ответственность за возможное неквалифицированное использование системы со стороны подрядчика. Поэтому он отвечает за свою систему, но юридически не гарантирует работу конкретного сайта на базе этой системы.
Заказчик также имеет договор с хостинговой компанией о размещении сайта, однако подобные типовые договоры, как правило, снимают с хостинговой компании хоть какую-то ответственность за реальную работу сайта. Это совершенно естественно, поскольку хостинговая компания никак не может гарантировать бесперебойную работу сайта заказчика, который разработан третьей стороной – подрядчиком, да еще и на базе продукта четвертой стороны – разработчика системы управления сайтом.
Подрядчик не может нести ответственность за работу хостинга, поскольку не имеет технической возможности контролировать чужие сервера, их настройку и т. д. А хостинговая компания не несет ответственности за технические проблемы магистрального провайдера, которые могут препятствовать доступу к серверам хостинговой компании со стороны Интернет-пользователей.
И уж никто из перечисленных сторон не может гарантировать бесперебойный доступ к сайту самого заказчика, поскольку осуществляет этот доступ пятая сторона, а именно провайдер Интернет-услуг, который связан договором только с заказчиком.
Вам, вероятно, уже кажется, что при таком раскладе запуск сайта становится чем-то совершенно нереальным. На самом деле все не так страшно, поскольку надо разделять “гарантии о бесперебойной работе” и “быстрое восстановление работоспособности”. Да, договоры между всеми перечисленными сторонами редко включают в себя столь серьезные гарантии, но грамотный подбор всех сторон может обеспечить, тем не менее, быстрое решение возникающих проблем.
В частности, становится более обоснованным выбор коммерческой системы управления сайтом вместо бесплатных аналогов. Если у системы есть конкретный разработчик, то к нему можно обратиться с конкретными вопросами. Кроме того, несмотря на отсутствие гарантий, разработчик системы управления сайтом действует на ограниченном рынке, и, следовательно, заинтересован в быстром решении проблем, связанных со своим продуктом, чтобы этот рынок не терять. Зачастую, при обращении к разработчику системы с описанием проблемы Вы получаете ответ: “Мы, конечно, ничего не гарантируем, но завтра все исправим!”. Аналогично вопросы решаются с хостинговой компанией и подрядчиком.
Важно понимать, что решение некоторых проблем или убыстрение процесса решения может потребовать дополнительных расходов. У каждого из нас существует психологический барьер, вызывающий раздражение, когда надо нести расходы за сайт, который и так уже стоил много денег. К сожалению, такое случается. Даже если Ваш автомобиль находится на гарантии, но сломался при этом на трассе между Саратовом и Москвой, Вы, наверняка, все равно понесете расходы, по крайней мере, на транспортировку до места осуществления гарантийного ремонта, и эти расходы Вам, скорее всего, никто не покроет. Либо, если все же покроет, то это будет означать, что данные расходы уже были включены в стоимость Вашего автомобиля, следовательно, Вы просто понесли эти расходы заранее.
Таким образом, очень важный этап при создании сайта – тщательный выбор подрядчика, который сможет предложить не только создание сайта, но также заранее определит возможные проблемы или даже возьмется за снятие с Вас головной боли по их решению. Например, он может одновременно разработать сайт и взяться за его техническую поддержку, чтобы своевременно решать проблемы с хостинговой компанией. Наверняка это потребует дополнительных расходов с Вашей стороны на оплату времени специалистов подрядчика, но зато переместит центр ответственности на сторону последнего, по определению являющегося более квалифицированной стороной в решении технических вопросов.