Интернет-магазин цветов, или как мы облажались на День Святого Валентина

Праздники все прошли, прибыль и убытки подсчитаны. Настало время повествования. Эта история о том, как из-за технической ошибки интернет-магазин по доставке цветов потерял несколько сотен заказов и выручки в 1 миллион рублей на День Святого Валентина.

В жизни бывают удачные моменты, которыми хочется поделиться, рассказать, чтобы похвалили и за тебя порадовались. А бывают ситуации, которые носят негативный оттенок и от которых никто не застрахован. На них нужно просто учиться и не допускать повторения в будущем. Как и обещал, в этом разделе я публикую не только положительные, но и поучительные истории. В конце концов, ошибка произошла не по моей вине, но так или иначе я был частью команды в тот день (и по-прежнему в ней остаюсь), и разделяю вместе со всеми ответственность. Осталось только рассказать, что произошло и в чем была первопричина.

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

Если посмотреть на историю запросов через wordstat.yandex по одному из самых популярных запросов «доставка цветов», то за любой предыдущий год можно увидеть характерные подъемы: с конца января и до середины марта, в августе и в конце ноября.

image

Вот какими датами вызваны эти тренды:

  • 25 января – Татьянин День;
  • 14 февраля – День Святого Валентина;
  • 23 февраля – День Защитника Отечества;
  • 8 марта – Международный Женский День;
  • середина августа – подготовка детей в школу, подарки учителям;
  • 25 ноября – День Матери.

И первые три месяца каждого нового года – самые насыщенные для владельца этого бизнеса. Очень важно подойти к этим праздникам во всеоружии. Мы старались, из года в год все было хорошо, но 14 февраля 2018 года нас ждало разочарование.

Немного о проекте: интернет-магазин цветов с доставкой по Москве и МО, основные источники продвижения – контекстная реклама (20%, я отвечаю за это направление) и SEO-продвижение (75%) и e-mail маркетинг (5%). Социальные сети практически не задействованы. Сайт на 1C-Битрикс, обычный хостинг timeweb. Последнее очень важно, дальше объясню почему. И команда разработчиков, курирующая наш проект, была на удаленке. И это в какой-то степени сыграло свою роль.

Существует миф о том, что «цветочники» на эти праздники зарабатывают чуть ли не полугодовую норму выручки, что позволяет им расслабить булки в другие месяцы. Это не так. Да, заказов больше, выручки в разы больше. Но не всегда прибыли больше. Потому что затраты на покупку цветка, услуги флориста, упаковка, аренда помещения, стоимость курьеров, рекламные расходы, возвраты – все это в период повышенного спроса сильно возрастает.

Итак, все было отлично до 14 февраля 12:30 по московскому времени. К этому моменту мы приняли уже более 120 заказов на общую сумму 500 000 руб. И собирались получить еще 200+ заказов по опыту прошлого года. Я даже зафиксировал рекорд одновременного посещения в 100+ пользователей:

image

В 12:43 произошел первый сбой. Конечно же, мы сразу обратились за помощью к нашим разработчикам на удаленке. Переписка с владелицей в WhatsApp была примерно такая:

image

Ошибка была и 502 Bad Gateway, и в какой-то момент я успел зафиксировать даже такую:

image

И это самое пиковое для продаж и заказов время. Разработчики не смогли своими силами выяснить проблему и написали в техподдержку хостинга. Через некоторое время получили такой ответ:

image

Далее вот такая цепочка отказов сайта:

  • 12:43-12:47 = 4 минуты
  • 13:01-13:18 = 17 минут
  • 13:27-13:42 = 15 минут
  • 13:57-14:17 = 20 минут
  • 14:26-14:54 = 28 минут
  • 14:58-15:15 = 17 минут
  • 15:30-15:46 = 16 минут
  • 16:08-16:27 = 19 минут
  • 16:35-16:37 = 2 минуты
  • 16:48-16:51 = 3 минуты

И такой диалог с владелицей:

image

Я в тот момент не был на точке (слава богу!), и поэтому обо всех эмоциях и переживаниях мог только догадываться из сообщений. Страшно было и то, что копии сайта не было (а точнее, она упала вместе с основным сайтом), и все цветы (букеты) флористам нужно было собирать по памяти. Заказы были, они падали на почту, но вот цветовые решения, количество, форма, картинки и какие-то нестандартные букеты – все это теперь нужно было переспрашивать у клиента или же вспоминать самостоятельно.

Разработчики так и не смогли определить причину падений сайта. В какой-то момент стали даже верить в теорию заговора и DDoS-атаки конкурентов. Хостинг не выдержал? Думали и об этом, однако до 14 февраля было еще и 13 февраля, не менее интенсивный по своим нагрузкам день. Но там все прошло без проблем.

image

Наш интернет-магазин так и остался лежать до 15 февраля (за оставшееся время мы получили всего лишь 30 заказов), пока я не обратился к человеку, недавно выполнявшему для нас задачу на фрилансе, в качестве независимого эксперта.

Первое, что сразу же посоветовал программист – это поменять хостинг как минимум на VPS (виртуальный сервер), при чем этот сайт вынести на отдельный VPS, так как виртуальный сервер более мощный и более устойчивый.

Анализ log-файлов показал, что никакой атаки не было. Правда один раз кто-то просто выключил сайт на хостинге (13:01-13:18), т.е. это скорее всего не было DDoS-атака или ошибка на стороне PHP, а больше было похоже на то, что кто-то руками на хостинге выключил этот сайт на данный период времени. Это так и было – сотрудники хостинга отключили нас в ручном режиме из-за чрезвычайно высокой нагрузки на сервер. А что явилось причиной такого резкого скачка – предстояло выяснить дальше.

На каждый виртуальный аккаунт хостер выделяет определенные мощности, и при резком выходе за пределы этих выделенных мощностей хостер просто временно отправляет данный аккаунт в игнор, и далее пишет сообщение владельцу аккаунта: «У вас был превышен порог выделенных мощностей, переходите на более мощный и дорогой тариф».


На вопрос:

— «Почему они не говорили нам (текущие разработчики), что лучше перейти на сервер другой, более мощный и более безопасный?»

Я получил вполне конкретный и здравый ответ:

— «Многие прогеры и не будут туда предлагать перевести. Ведь чтобы это сделать, нужны определенные знания в администрировании Linux, а это уже ближе к системному администрированию».

Все сразу стало понятно – некомпетентность. От них мы получали такие сообщения:
Похоже это все-таки DDoS, но какой-то хитрый. Сейчас людей на сайте почти нет, а он делает по 40000 запросов к базе в минуту. Запросы большие, и они переполняют кэш, в итоге ничего не грузится. Вчера нагрузка была больше по количеству людей, но сайт справлялся, не было таких проблем. Развернули копию сайта, симулировали заход большого количества пользователей. Он начинает подвисать. Надо переезжать на VDS. Дальше сайт будет работать и в плановом режиме разбираться.
Теперь даже я знаю, что DDoS — это не про запросы к БД. Если к веб-серверу запросов нет, а к БД есть, то это не DDoS, а какие-то внутренние проблемы… В общем, 0 level. Уровень разработчиков сразу стал понятен в стрессовой и нестандартной ситуации. За 1,5 дня команда из 3-4 человек так и не смогла понять причину падения магазина и восстановить его работоспособность.

image

В какой-то момент в дело вступили и SEO-шники со своими советами. Они:

  • Снизили нагрузку на сайт со стороны ботов Яндекса через robots. Пока поставили жесткие ограничения;
  • Снизили нагрузку со стороны ботов Google на сайт через Google Webmasters;
  • Снизили нагрузку на сайт от разных ненужных нам ботов, закрыв их через файл .htaccess.

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

Мы полностью доверились независимому программисту и стали ждать от него новостей. А сайт все висел, не давал даже в админку зайти. В итоге разработчик снял копию сайта прямо с хостинга и разместил у себя локально.

Небольшое отступление: интернет-магазин работает с 2015 года, за это время обслуживался у нескольких агентств по SEO-продвижению. В этих агентствах сменилось достаточное количество разработчиков и у каждого из них был свой доступ. Как позже выяснилось, чуть ли не каждая «собака» имела администраторский доступ к сайту. И у SEO-шников в том числе.

Первым делом были закрыты все доступы. Да, разумеется, 1С-Битрикс тем и славен – можно не иметь доступов, а лишь кучу скриптов, которые при запуске смогут восстановить и добавить администратора. И если кто-то из людей, которые имели доступы к сайту (а их было с десяток) такой скрипт куда-то подложил, то без проблем сможет запустить его и получить доступ как админ и нагадить…

Через некоторое время мы получили от него первые результаты:

image

Виновного по имени не назвали, но ответственный тот, кто делал это:

\Bitrix\CmskassaEkam\CheckListTable::loadUpdates()

В Битриксе есть такая штука — так называемые агенты. Это задания (выполняющийся программный код), которые запускаются в определенный период времени. Запуск этих заданий (агентов) происходит с хитами обычных пользователей, пришедших на сайт. Агентов создают разработчики, если нужно выполнять какой-то код в определенный промежуток времени, который должен что-то делать на сайте в этом заданном периоде.

EKAM – это онлайн-касса и автоматизация розничной торговли. Модуль связывает интернет-магазин с фискальным регистратором для формирования чеков из CMS «1С-Битрикс» по «54-ФЗ о применении контрольно-кассовой техники» с помощью онлайн-кассы ЕКАМ.

Сама касса стоит локально (в офисе), штатный функционал Битрикса по кассам не устроил по причине отсутствия обратной связи, в то время как техподдержка EKAM отвечал беспромедлительно.

Так вот, на сайте был установлен модуль «ЕКАМ.Онлайн (cmskassa.ekam) cmskassa.ru» и кто-то повесил запуск одной из функций из этого модуля «\Bitrix\CmskassaEkam\CheckListTable::loadUpdates()» на агента. Эта функция очень тяжелая (вешающая) для сайта. Таким образом, когда происходил очередной запуск данного агента, сайт ложился очень-очень надолго.

image

Осталось вспомнить кого мы последний раз подключали к задаче по решению вопроса с EKAM модулем. Как позже выяснилось, совсем недавно владелица интернет-магазина обращалась за помощью к специалистам EKAM (чеки печатались через раз), и они что-то делали на сайте, доступ на уровне администратора им был предоставлен.

Работоспособность сайта удалось восстановить, но нагрузки изредка появлялись и еще 1-2 дня заставляли сайт виснуть на 10-15 минут. 15 февраля я был на одной из конференции по электронной торговле и встретил на стенде сотрудников EKAM. Описал текущую ситуацию, нашей задаче сразу же поставили высокий приоритет. Однако ответ был не слишком конкретным, а вскоре техподдержка EKAM и вовсе подзабила отвечать и решать наш вопрос:

image

Нас попросили сделать стандартные вещи… Но при этом сотрудники EKAM забыли упомянуть об изменениях, произведенных в модуле их разработчиком вручную в конце января на нашем сайте.

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

На текущий момент все работает хорошо, мы реабилитировались за День Святого Валентина на 8 марта. При этом даже еще не переехали на виртуальный сервер, хотя нагрузки на сайт на Международный Женский День были куда выше, чем на 14 февраля.

Из всей этой ситуации на День Святого Валентина мы вынесли очень много полезного, а именно:

  • необходим тотальный контроль;

В силу того, что сайт – это единственный источник привлечения клиентов, нужно было уделить больше внимания его защите и всем процессам, построенным вокруг него:

  • осуществить переезд на выделенный сервер;

закрыть администраторские доступы тем, кому он не нужен в принципе;
вести LOG-файлы всех задач, которые были сделаны, чтобы потом можно было найти крайнего;
развернуть копию сайта (она была, но на том же хостинге, и упала вместе с основным сайтом), картинок, описаний товаров, чтобы была возможность посмотреть хоть на свой ассортимент.

  • надо нанимать заинтересованных и компетентных сотрудников;

Как правило, в агентствах одной командой одновременно ведется большое количество проектов. И количество времени, которое они тратят на работу над одним проектов в день, сильно ограничено. Перерабатывать смысла нет, так как сидят за оклад. Мотивация минимальна. Да, фрилансер тоже ведет много проектов одновременно, но здесь он отвечает своей репутацией, в то время как в компании сотрудник – это приходящее/уходящее звено. Не вышел на связь – ну и ладно. Рабочий день закончился – завтра посмотрю.

Навыки и опыт очень важны. Если бы мы обратились к независимому разработчику раньше, уверен на 100%, что количество падений сайта было бы сведено к минимуму.

  • каждый должен заниматься своим делом;

Я отвечаю за рекламу, флористы – за конечный букет, разработчик – за работоспособность системы, seo-шники – за продвижение и т.д. Никто не должен лезть в чужие процессы. Увы, так бывает не всегда…

  • это не конкуренты, это у нас руки кривые;

Так оно и есть. Из пункта выше следует, что каждый занимается своим делом. У конкурентов в этот день и так забот и своих проблем хватает. Они погружены в свои процессы, им некогда думать о том, что происходит вокруг. И уж тем более устраивать DDoS-атаку на сайт не самого сильного игрока на рынке. Хотя, я могу быть слишком наивен и ошибаться.

  • чем больше в цепочке звеньев, тем сложнее найти крайнего. Да и стоит ли вообще искать?

Возможно, сотрудник компании EKAM в своих последних изменениях допустил ошибку, которая привела к катастрофическим последствиям в один из самых главных дней в году. И сделал он это неумышленно. А быть может, это не только он. Кто теперь разберется. Да и искать виноватых смысла нет. Каждый из нас на своем этапе допустил оплошность, которая в конечном счете привела к потере 200 заказов и 1 миллиона рублей.

Мы усвоили урок и надеемся, что в будущем таких проблем удастся избежать.
Поделиться публикацией
Ой, у вас баннер убежал!

Ну. И что?
Реклама
Комментарии 154
  • +6
    Стандартный ответ из Битрикса, всегда плохой хостинг а не плохой Битрикс.
    Про бардак с админскими провами это завсегда. Мне на некоторые сайты, к которым лет 5 тому назад дело имел, доступ до сих пор открыт.
    Удаленные разработчики свою специфику имеют, многие подробатывают, поэтому им порой проще бросить клиента чем помочь при форс мажоре.
    • +2
      Как правило, в агентствах одной командой одновременно ведется большое количество проектов. И количество времени, которое они тратят на работу над одним проектов в день, сильно ограничено. Перерабатывать смысла нет, так как сидят за оклад. Мотивация минимальна. Да, фрилансер тоже ведет много проектов одновременно, но здесь он отвечает своей репутацией, в то время как в компании сотрудник – это приходящее/уходящее звено. Не вышел на связь – ну и ладно. Рабочий день закончился – завтра посмотрю.


      Не совсем отвечает реальности. Фирлансер в качестве эксперта если Вам с ним конечно повезло сделает независимую оценку Тут главное что никто не знает зараннее хороший фрилансер или не очень. Фрилансер в качестве разработчика — в принципе если хороший сделает хорошо. Но с поддержкой будет сложнее. Его проект не будет знать никто кроме него. По поводу незамотивированных разработчиков из агенств которые сидят на окладе мнение неверное (хотя не исключает то что такие фирмы сущетсвуют и даже в Вашем случае была именно такая фирма). Их форма оплаты завуалированная сделка. Т.к. все часы относятся к проектам и время строго учитывается. В особо тяжелых случаях учет настолько тотальный, что на компьютер устанавливают программы которые делают снимки экранов и в зачет берут только время, когда работник типа топил клавиши. Да и репутации фирме не менее важна, чем фрилансеру.
      • +1

        | «Никто не знает зараннее, хороший фрилансер или не очень».
        Тут согласен, раздолбаев среди них очень много...


        | «Его проект не будет знать никто кроме него».
        А вот тут не соглашусь. Точнее, да, вы будете завязаны на 1 человека. Но и при работе с компанией, скорее всего, на вас тоже будут работать несколько конкретных людей. И только они будут знать ваш проект.


        Я сейчас как раз поимел удовольствие оказаться в такой ситуации: компания интегрирует нашу учётную систему (на 1С 8.2) с 1С: ДО. Долго тестировали код на стороне ДО, все вычистили. А потом у них там что-то случилось, тот сотрудник ушёл, а новый решил сделать все сначала, с тонной ошибок. В итоге, они попросили прислать им же те наработки, что были сделаны с тем сотрудником...

      • 0
        Битрикс вообще вреден. WooCommerce, даже учитывая тяжеловесность WP намного проще и стабильнее. И специалистов компетентных по нему намного больше. 100 одновременных посещений — курам на смех даже для обычного хостинга без выделенного сервера. На счёт удаленных разработчиков — не согласен. Если есть постоянный клиент, которых хорошо платит, фрилансер всегда пойдет навстречу. Глупо терять хорошего клиента, из-за того, что надо напрячься.
      • +36
        чтобы потом можно было найти крайнего

        Это самое главное!
        Не культура разработки, не CI\CD… Главное найти крайнего
        • +1
          Рекорд в 100 одновременных пользователей… хостинг… такому проекту CI/CD как-то слишком на вырост что-ли. Может лучше просто волевой запрет на кастомные решения, и только коробочные (или облачные) без единого изменения в скриптах в принципе. Все таки, если IT — не ключевая компетенция данного бизнеса, то может и не стоит туда лезть. Да и почитав переписку, сочувствую людям, которые работают с заказчицей. Все таки, в таком проекте вряд ли наберешься полезного опыта (кроме опыта расчистки авгиевых стаен), да и что-то мне кажется, что и денег сильно выше рынка не получишь тоже…
          • +3
            А я сочувствую заказчице. Несколько экспрессивных выражений в состоянии аффекта — ничто по сравнению с перманентной некомпетентностью.
            • 0
              Бесплатные TravisCI/GitlabCI на вырост?
              • +2

                Travis бесплатный только для OpenSource. Для проприетарных проектов — от 69$ в месяц.

                • +1
                  В магазинчике на битриксе столько корпоративных тайн, что выложить его в паблик репо невозможно.
                  зы. Gitlab вместе со своим CI по прежнему доступен, если боитесь что ваши сорцы украдут индусы
                • 0
                  Это они для вас бесплатные, а для владельца бизнеса стоят оплачиваемого времени фрилансеров на настройку их и доп окружений без осязаемого business value.
                • 0
                  Ну как же без доработок! У нас же совершенно уникальная палатка по продаже шаурмы с уникальнейшими бизнесс-процессами )))) *сарказм-mode*
              • +45
                Какие странные сообщения от девушки в телеграмме. Ругать разработчиков, экономя на айти — как это близко нашему менталитету.

                Почему владелец бизнеса не проводит регулярное нагрузочное тестирование своего проекта? На этом этапе можно понять, какое требуется железо под планируемую нагрузку.

                Когда сайт, который реально зарабатывает деньги, хостится на каком-то «общем хостинге» — тоже, наверное, что-то идёт не так.

                Интересно, как обстоят дела с БД? Есть ли синхронная репликация, или это тоже единая точка отказа системы.
                • +16

                  Вряд ли владелица бизнеса слышала фразу «нагрузочное тестирование». Это вообще не её забота.


                  По поводу «экономить на IT» — почти невозможно понять, что квалификация текущего персонала хромает, пока не случаются такие вот ситуации. До этого все работало? Да. Ну и славно.


                  А вот у тех, кто запихнул Монстробитрикс на виртуальный хостинг, стоит уточнить, все ли у них в порядке. Учитывая, что ни для кого не секрет, как битрикс прожорлив до ресурсов.

                  • +4
                    Если единственный канал поступления заказов — это сайт, то тут просто необходимо разбираться в матчасти, хотя бы на уровне понимания основ «как это работает» и сопутствующих рисков. Не умеешь сам — найми того кто знает (попросить приглядеть «по дружбе» тоже не прокатит) и прислушивайся к нему (это тоже важно).

                    Как тут уже несколько раз упоминалось — при таком отношении к основе бизнеса рано или поздно это бы произошло.
                    • +6

                      Ну, скорее всего и был нанят тот, кто заявил, что знает. Это общая проблема найма узкого специалиста: ты не можешь проверить в этой области ни его квалификацию, ни квалификацию тех, кто объективно мог бы её проверить.

                    • +3
                      Единственная забота владельца бизнеса — нанять квалифицированного управляющего. Который в свою очередь «нагрузочное тестирование» проведёт не только на сайте, но и на логистике, и прочих аспектах — тогда и ситуация «все это в период повышенного спроса сильно возрастает» развернётся в сторону: «оптом всё дешевле».
                      • 0
                        так может у них тренд роста костов такой, что случившийся падеж еще и спас им бизнес от разорения?)
                        • 0
                          .
                        • +1
                          Вряд ли владелица бизнеса слышала фразу «нагрузочное тестирование». Это вообще не её забота.

                          А дело в том, что, судя по всему, в данной компании это вообще ничья забота. Сайт поддерживают либо аутсорсеры, либо фрилансеры. А вот с переездом на VPS всё может только усложниться: сервер нужно правильно настроить, самостоятельно обслуживать. Один нерадивый сотрудник поставит вешающую крон-задачу, другой вообще влепит майнер, а третий скопипастит rf -rf с первого попавшегося форума.

                          • 0
                            … плюс еще периодически затыкать дыры в безопасности, ставить хотфиксы и экстренные обновления после внезапно найденных CVE в системных и серверных компонентах.
                          • 0
                            Задача управляющего (может и не владельца) обеспечить постоянный доход и прежде всего проверить, что все операционные задачи выполняются правильно. Если вы управляете отелем и к вам приедет в 5 раз больше посетителей — это ваша задача уточнить сколько сотрудников выйдет на работу?
                            • 0
                              Обработка праздников, тем более, когда рост нагрузки предсказуем, является операционной задачей. Потому что эта задача возникает в основной деятельности компании и с известной регулярностью.
                            • 0

                              Ну учитывая что они не догадались перевести битрикс с шареда на VDS то думаю толку не было-бы даже если им в это носом ткнуть. Дело в том что было бы максимум настроено из мануалов с интернета (apt install apache2 php mysql) и данная конструкция нефига бы не помогла. Сами понимаете что как минуму нужно все нормально настроить, а потом еще это и обслужиывать

                            • 0

                              С такими 'владельцами' лучше не работать. Токсично очень

                            • +36
                              «Идиоты, уроды, лохи», я понимаю что в сердцах все мы можем так сказать, но выкладывать это в виде переписки, которую могут увидеть вышеперечисленные люди, это явный перебор.
                              Да еще и в итоге вроде как оказались виноваты совершенно другие люди.
                              • –1
                                Вот поэтому лично я не сотрудничаю в СНГ IT)
                                • +5
                                  А я сотрудничаю в СНГ с IT. И ни разу оскорблений не было.
                                  • 0
                                    Это вам повезло. Многим не то что оскорбления, угрозы сыпятся регулярно (а если что — закопаем(с)). Примерно как в той истории на Хабре с арабами и кинжалами, вах, только по-русски и без гнутых кинжалов.
                                    habrahabr.ru/post/177477 там некоторые на соотечественников жаловались в комментариях.
                                • 0
                                  Там нет указания личных данных, поэтому в раскрытии таких пассажей публично нет ничего зазорного.
                                  Да еще и в итоге вроде как оказались виноваты совершенно другие люди.

                                  И да и нет — те, кого ругали, не смогли найти косяк третьих лиц, писали ерунду про DDoS. Только дополнительно привлеченный специалист разобрался, вместо них.
                                  Или я неверно понял текст?
                                  • 0
                                    Участники легко поймут о ком идет речь в статье. Если увидят ее.
                                    • 0
                                      Учитывая ситуацию, когда из-за некомпетентности этих разработчиков коммерсанты получили солидный убыток (недополученная прибыль), то они в дальнейшем сотрудничать и так и так не будут. Так что никаких проблем такая характеристика (не считая «общих моральных» соображений) не вызовет. По сути их просто назвали некомпетентными в крайне обсценной форме, не более.
                                      • +3
                                        Пораздают доступов налево и направо, а разрабы потом некомпетентны, ага!
                                        • 0

                                          Из описания ситуации сложно понять компетентность основных разработчиков. Хотя бы потому, что кодовая база не под их контролем. Как я понимаю, вносились изменения прямо на продакшене всеми кому не лень и никак не документировались. То, что они не поднимали какие-то организационные вопросы, может говорить как о просто их низкой степени вовлеченности и заинтересованности, так и о некомпетентности. "Ерунда про DDoS" тоже может ничего не говорить о компетентности, просто факт нерассмотрения бритвы Хэнлона в качестве основной презумпции.

                                  • +25
                                    Запуск этих заданий (агентов) происходит с хитами обычных пользователей, пришедших на сайт

                                    cron для бедных? Нельзя настроить настоящий? Даже на шаред-хостингах есть такая возможность уже лет 15
                                    • +11

                                      Это же битрикс.
                                      У них “свой собственный путь ©” :-)

                                      • +7
                                        В битриксе есть штатная возможность перевести все задания с агентов на крон (и это рекомендуется делать в документации).
                                        По умолчанию исполняется на хитах, видимо для совместимости с шаред-хостингами без крона.
                                        • +1
                                          Есть сервисы внешнего крона.
                                          Я сам делал в паре своих поделок.
                                          Было бы желание.
                                    • +1
                                      С большинством выводов не соглашусь — в реальности случаев, когда свои разрабы, в своем ДЦ и штатными админами косячат не меньше, чем описано. 1.5 дня на фикс, конечно, многовато, но в больших энтерпрайзах подобные проблемы могут дольше оставаться вообще незамеченными, там только письмо от клиента до команды поддержки несколько суток может спускаться.
                                      • +22
                                        Ёжики плакали и кололись, но продолжали жрать кактус использовать Битрикс… Наберут по объявлению, потом жалуются…
                                        • +5

                                          Это порочный круг: разработчики сайтов всем советуют битрикс, потому что на нем много сайтов. И, в итоге, на нем много сайтов, и поэтому его все советуют.


                                          Да, ещё заветные «1С» рядом с названием «битрикс» вызывают у начальства положительные эмоции. Им вообще невдомек, насколько эта 1С кривая и косая, это технари понимают.

                                          • 0
                                            на нем много сайтов, и поэтому его все советуют.

                                            Дважды не соглашусь.

                                            Как раз таки разработчики Битрикс не советуют. Только люди, которые получают процент от привлечённых пользователей (в этом смысле они уже выступают в роли менеджеров по продажам или «наводчиков» — выбирайте по вкусу).

                                            А сайтов на Битриксе не так много (особенно, до сих пор активных), просто много разговоров и уговоров. Как положительных (от лица финансово заинтересованных людей), так и отрицательных (от лица всех остальных).

                                            Так что там порочный круг скорее из серии «на деньги одного привлечённого пользователя можно привлечь ещё двоих».
                                          • +2
                                            В этой статье можно поменять битрикс на мадженто или симфони — по сути ничего не поменяется.
                                            • 0

                                              А symfony тут причем?

                                              • 0
                                                А cms или фреймворк тут без разницы, если их неправильно готовить.
                                          • +23
                                            Тетка получила ровно то, что заслужила.
                                            • +38
                                              Как мы сделали факап и продолжили считать, что виноват кто угодно, но только не мы.
                                              • +3
                                                деньги / надежность = const
                                                • +40
                                                  «Пока гром не грянет, мужик не перекрестится». Стандартная ситуация для «не-IT» бизнеса: если что-то работает в данный момент, то всем плевать как это происходит и насколько надежно состояние. Десятки раз встречал такое. Причем, в 98% случаев все попытки сказать, что неплохо было бы проверить-подумать-наладить приводили к реакции «да не бзди (простите, благородные доны, но это цитата), интеллигенция!». И, судя по тону переписки в WhatsApp, данный владелец относится к этим 98%. Хотя, конечно, могу ошибаться, кто знает.

                                                  И по поводу скринов переписки: я не великий моралист, но бранные слова и имена лучше замазывать. И второе: исключительно по тону и содержанию переписки владелица данного магазина не вызывает у меня ровно никакого сочувствия. Паника и истерика в критической ситуации — отвратительно. Рабочая переписка с использованием бранных слов — еще хуже. Несколько раз в жизни общался с людьми, которые просто не способны понять, что когда кто-то работает над серьезной проблемой, то отвлекать его десятками сообщений по три слова — плохая идея. Это как хирурга за руку дергать, который тебя оперирует.

                                                  И еще: на одном из скринов написано «нагрузка 293 из 250». И красивый график, согласно которому сайт оказывал на хостинг нагрузку выше лимитов и раньше. Например, 2-го и 12-го февраля. И никто не заметил в этом ничего неправильного? А если посмотреть тот же график за предыдущий месяц?
                                                  • +2
                                                    IT? У них то же самое с электрикой и стройкой обычно, пока штукатурка на голову не упадёт — экономить не перестанут, и хорошо, если штукатурка. После пожара могут попытаться контролировать электрику, но т.к. экономят и «я сам с усам», то их обводят вокруг пальца и что скрыто за панелями — хорошо, если не очень опасно. Бьющие током конструкции — норма, главное — экономия. И истерики «аааафсекозлы, никто не работает» в случае вполне ожидаемых проблем.
                                                    • +1
                                                      Да, я, пожалуй, не совсем точно выразился в своем комментарии. Я имел в виду исключительно разницу в отношении к сайтам и т. п. в IT и «не-IT» бизнесе. Отношение к неосновным (с точки зрения бизнес-процессов) и непрофильным вещам почти везде и почти всегда отдает раздолбайством пока не грянет тот самый гром. Сам грешен. Единственное, что хотелось бы отметить: все-таки у рассматриваемого бизнеса неожиданно сломался основной, хоть и непрофильный инструмент. А это уже раздолбайство следующего уровня
                                                      • +2
                                                        Согласен. Это как автомобили в службе доставки — можно ничего в них не понимать, но когда они являются основой бизнеса, то нужно хотя бы иметь в штате человека, который будет следить за своевременностью ТО и ремонта (если свой гараж не имеет смысла из-за малых объёмов) и координировать это дело, а то в самый пик «ой, сломалось».
                                                        • 0

                                                          Ну не скажите. Это не "IT" и "не-IT" играет роль, а руководство.

                                                          • 0
                                                            Конечно. Я просто привел личную статистику и субъективные ощущения об отношении к одному из основных инструментов продаж (сайту) у «IT» и «не-IT» и не более того. Раздолбаи есть везде. Плохие начальники и бестолковые менеджеры — тоже.
                                                    • +27
                                                      Битрикс, Шаред хостинг (явно выбирался из принципа — подешевле), Фрилансеры отвечающие за ядро бизнеса. Произошло ровно то что должно было рано или поздно произойти.
                                                      • +15
                                                        Осталось вспомнить кого мы последний раз подключали к задаче по решению вопроса с EKAM модулем.

                                                        Т.е гитом вы не пользуетесь?

                                                        • +9
                                                          Вот тот же вопрос. В случае отрицательного ответа пункт про тотальный контроль вызывает улыбку. Кстати, есть более общий вопрос — неужели в веб разработке это норма? Я несколько раз сталкивался при заказной разработке сайта — люди со стороны, работающие над ним на разных этапах, вообще не знают, что такое системы контроля версий.
                                                          • +1
                                                            Это норма, но не в вёб разработке, а при найме непрофессионалов за копейки.
                                                            • +2

                                                              Отрасль веб-разработки (если брать в широком смысле) достаточно большая, и в ней есть свои сегменты. В низшем сегменте (и по квалификации, и по цене) студии и фрилансеры как раз пилят ширпотребные сайты на движках. Да, такой сегмент не пользуется даже гитом, не говоря уже о CI и тестировании. Код правится, зачастую, прямо на боевом сервере или через FTP, или через админки CMS. Причём такая практика воспринимается разработчиками как идеальная: "Нам некогда с этим всем разбираться, да и будет медленно, а тут быстренько поправил файл — и заказчик уже может посмотреть". К тому же, такой подход архитектурно допускает PHP (код интерпретируемый — не нужно пересобирать, сервер заново запускает приложение на каждый хит — поддерживается "горячая" замена кода).


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


                                                              Так что всё действительно упирается в культуру разработки. А чтобы её культивировать и контролировать, в компании должен быть опытный CTO.

                                                              • +2
                                                                Взяли мнящего себя крутым фрилансера стажёром, дали задачу — он что-то сделал на продакшене не то, я развернул из бекапа последнюю актуальную версию (прод лежит — не хорошо) — крики-визги «ты удалил что я там сделал», «ну так выложи из репозитория», «какого? я прямо там правил». Проработал не долго — уяснить некоторым технологию «делаем локально, сохраняем в репозиторий, тестируем на тестовом полигоне, выкатываем на прод» вместо «тяп-ляп по месту» не всем дано понять, даже со второго раза. Зачем ему давали доступ к основному телу — загадка (кто-то из менеджеров, они не видят разницы между продом и тестом и впечатлились резюме, обучение как-то прошло мимо ушей). Сейчас, наверное, очередной магазин цветов окучивает подобным образом (или за годы понял как оно). Зато у него плюс — заказчик позвонил и ещё до конца разговора видит только придуманное изменение. Или упавший сайт. Как повезёт.
                                                              • –1

                                                                Git и Bitrix это замечательно, но как-то коряво.


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


                                                                Там нет такого, чтобы:
                                                                /bitrix/core — только ядро, которое от авторов
                                                                /bitrix/plugins — то, что правится очумевшими ручками фрилансеров.

                                                              • +5

                                                                Увидив скриншот с ошибкой, сразу улыбнулся: ах этот Битрикс… Мощный, надежный, популярный… А потом что-то идет не так… И никто не понимает «в чем же дело?! почему так получилось?!»


                                                                А вообще надо оптимизировать серверную часть работы сайта, выполнение скриптов и обращения к базе! Тогда и «прожорливости» меньше будет гораздо)

                                                                • +2

                                                                  Эпичнейшие слова встречаются иногда:


                                                                  foreach ($products as $product) sql_query($action,$product['id'])
                                                                • +16
                                                                  «Почему они не говорили нам (текущие разработчики), что лучше перейти на сервер другой, более мощный и более безопасный?»
                                                                  «Многие прогеры и не будут туда предлагать перевести. Ведь чтобы это сделать, нужны определенные знания в администрировании Linux, а это уже ближе к системному администрированию».
                                                                  Все сразу стало понятно – некомпетентность.

                                                                  — Почему мой стоматолог не сказал мне, как лечить простуду?
                                                                  — Многие стоматологи и не будут говорить. Ведь чтобы это сделать, нужны определенные знания, это лучше к терапевту обращаться.

                                                                  Некомпетентность.
                                                                  • –4

                                                                    Скорее:


                                                                    • Почему мой стоматолог не предложил начать открывать бутылки открывалкой, а не зубами?
                                                                    • Многие стоматологи и не будут говорить. Ведь чтобы это сделать, нужны определенные знания в бытовой технике, а это уже ближе к инженерии.
                                                                    • +1
                                                                      Я перевел то, что имел в виду независимый эксперт. Автор сделал из этого неправильный вывод. Конечно неплохо, если они это знают, но в общем случае это необязательно. Человек может год кодить на Битриксе и не иметь дела с серверами, так как этим занимается сисадмин.
                                                                      Там вообще не очень понятно. Судя по цитате далее «Надо переезжать на VDS» они все-таки что-то говорили.
                                                                      • –1

                                                                        Системные требования — это дело разработчиков, админы должны их исполнять, а требуют разработчики.

                                                                        • +1
                                                                          Ждем ответную статью разработчиков.
                                                                    • +1
                                                                      Ох, а если бы кто-то действительно начал бы ДДОСить этот сайт с такой командой поддержки… Это сколько времени потребовалось бы для того, чтобы понять, что вообще происходит.
                                                                      • 0
                                                                        ДДОС это специфическая тема. 99% сайтов которые не под защитой лягут под простым стресс-тестированием. Правда его легко вычисить по ip адресу и отключить. Просто защита должна быть поставлена точно так эе как настроен почтовый сервер или сервер баз данных. Если ее нет тодаже маленька атака на 7-й уровень с минимального количества устройств достаточного для того чтобы их нельзя было отключить по одному положит среднестатистический сайт с вероятностью 100%.
                                                                      • +6

                                                                        Сделать сайт на Битриксе, а потом удивляться, что он ВНЕЗАПНО плохо работает ¯_(ツ)_/¯

                                                                        • +1

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

                                                                          • +3
                                                                            Потерян 1 млн выручки. А прибыли вполне возможно там с гулькин нос.
                                                                            • 0

                                                                              Ну думаю что тысяч сто-двести прибыли бы набралось. Хм. Мне, конечно, неизвестно, сколько именно за этот сайт заплатили и сколько он стоил бы у более профессиональных профессионалов, но вполне возможно что бизнес ещё и в плюсе остался.

                                                                              • +1
                                                                                Ну думаю что тысяч сто-двести прибыли бы набралось.

                                                                                Наверно, скорее ближе к ста. Но это только два месяца в году. Что-то я с трудом могу представить как вы нанимаете профессионального разработчика за 100 тыс рублей, и что он будет делать остальные месяцы? Понятно же что при такой прибыли денег может хватить только на фрилансеров и готовые решения.

                                                                              • +1
                                                                                Угу, особенно если учесть, как накручиваются цены на цветы в ДСВ и 8 марта…
                                                                                • –5
                                                                                  Магазин закупает цветы уже по накрученным ценам.
                                                                                  • +1
                                                                                    Не сказал бы. Когда я крайний раз с этим сталкивался невольно, у оптовиков цены были ± такими же, как обычно.
                                                                                    Оптовики зарабатывают не на ценах, а на объемах. В отличие от розницы, для которой оптимальнее продавать меньше, но дороже.
                                                                            • +5
                                                                              После прочтения создалось ощущение, что пацаны так и не поняли, в чём была проблема.
                                                                              • 0

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

                                                                                • +4
                                                                                  У вас очень узнаваемый отечественный бизнес...

                                                                                  Зарубежный бизнес, в т.ч. в США, точно такой же.
                                                                                  • 0

                                                                                    Говорю со своего опыта: различия есть, для меня, значительные. Пока работал с мелким бизнесом отечественным, то относительно проблемными были где-то с половину клиентов: проблемные, это когда владелец нифига не хочет ни понимать, ни платить, но чтоб работало. То же для европейского рынка: два проблемных клиента за 3 года, один в Испании и один из Англии. И оба наши, русскоговорящие: белорус и украинец. Более жадных до неадекватности, мне встречать не призодилось. Классика, когда сайт — главный источник заказов, но "давайте уложимся в 30-20-10 тр".
                                                                                    Очень рад, что перестал работать с подобными заказчиками.

                                                                                    • +2
                                                                                      Очень знакомо коллега. Сайтами не занимаюсь но регулярно просят подумать посчитать.

                                                                                      Не так давно был вообще феерический случай. Сайт предполагает презентацию нескольких заведений на одной территории. Описания, статьи, меню, фото, заказ. Большей части фотографий просто нет. Те что есть существуют в ужатом до непотребства виде или корректированы до кислотных цветов. Причем заведение люксовое. Объясняю что для доставки и грамотного исполнения нужно продумать и наладить бизнес-процессы, нанять фотографа, нанять копирайтера, нанять дизайнера и прочие нюансы. Получаю ответ: нам только каркас, да недорого, ибо любой студент его соберет за 30 тысяч. Говорю спасибо, нет, не желаю иметь с этим ничего общего. Договариваемся поговорить еще раз когда наймут нормального маркетолога, ибо «нужен профессионал который скажет как делать». Созваниваемся с ним. На удивление очень приятный специалист, поговорили, выяснили что у него есть контакты хороших специалистов в Москве (у нас их просто нет), сошлись на том, что созвонимся, когда будет понимание с чем будем работать. И пропал. Потом выяснил что его уволил собственник с формулировкой «это я и так сам знаю».
                                                                                      • 0

                                                                                        Да, у всех истории похожие.
                                                                                        Рад за вас, что оставили эту область. Как впрочем и я, разработкой сайтов лет 6 не занимаюсь.

                                                                                        • 0
                                                                                          Когда просто хотят сайтик подешевле это одно. Но вот когда фабрика по пошиву одежды не имеет учета продукции и хочет интернет-магазин это уже другое.
                                                                                          А уж очень состоятельный человек, который хочет сайт для люксовых заведений с тем же подходом это вообще абзац.

                                                                                          Тоже крайне рад за вас, такое себе это занятие)
                                                                                • +9
                                                                                  Многие написали, вроде бы правильные вещи, про нагрузочное тестирование или найм профессиональных разработчиков. Но не учли главного. Это мелкий бизнес. Могу предположить что владелец этого бизнеса зарабатывает на уровне среднего разработчика. При таких доходах найм профессионального разработчика не выполним. Только фрилансеры, только готовые решения, только чинить уже сломанное. Даже если предположить, что владелец бизнеса зарабатыват в 2 раза больше и чисто теоретически может себе нанять адекватного разработчика, то тут возникает другая проблема. Хорошие разработчики не хотят работать в подобных компаниях, т.к. нет других разработчиков и владелец ничерта не понимает в IT. Не видать тут вам докеров, реактов, микросервисов, лямда-архитектуры, машинного обучения, блокчейна или что там сейчас модно.
                                                                                  • +2
                                                                                    Даже если предположить, что владелец бизнеса зарабатыват в 2 раза больше и чисто теоретически может себе нанять адекватного разработчика

                                                                                    А захочет ли? Поставьте себя на место владельца бизнеса. Он (или она) годами учился нагибать поставщиков, решать вопросы с представителями власти, контролировать подчиненных чтобы… э… отдавать половину честно заработанного парню, который и десятой части из этого не умеет?
                                                                                    • 0

                                                                                      Не половину заработанного, а 5-10% от выручки. С учетом стоимости факапа это не такая уж и большая цена. У них пачка фрилансеров обходится дороже.

                                                                                    • +1
                                                                                      Сказка о попе и его работнике Балде. Только каковы были истинные цели сеошника, решившего поведать нам (с гуглом) эту историю, наполненную пылкими речами и драматизмом?
                                                                                      • +2
                                                                                        А какая цель СЕОшника вцелом? Статья написана для приглашения на хабр.цель достигнута. Кстати вопрос к автору в бауманке уже и сео читают?

                                                                                      • +1

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

                                                                                        • 0
                                                                                          тогда это история про «у нас ОЧЕНЬ мало хороших разработчиков», настолько мало, что бизнесу (малому в конкретном случае, но у корпораций проблемы те же) их не видать :(. Впрочем, как и мало у нас хорошего малого бизнеса…
                                                                                        • +1
                                                                                          И ведь наверняка это не последняя история факапа от пользователей группы «Б».
                                                                                          • 0
                                                                                            Посмотрите на облачные варианты реализации интернет-магазина, типа ecwid и ему подобные
                                                                                            • 0
                                                                                              Осторожно: В статье присутствует нецензурная брань (как минимум в скриншотах)!
                                                                                              Предупреждения об этом перед началом статьи — не видел.
                                                                                              • +11
                                                                                                какой ужас
                                                                                                • 0
                                                                                                  Простите! Я — новичок здесь. Впредь буду аккуратнее
                                                                                                • +9
                                                                                                  Типичная ситуация для российского бизнеса. «Никогда такого не было и вот опять».
                                                                                                  1. Разработчки-не админы.
                                                                                                  2. Битрикс требует повышенного внимания специалиста именно по Битрикс.
                                                                                                  И вот мне что ещё очень «нравится» в российском бизнесе: главное-найти крайнего. В иностранных компаниях совсем другой подход-понять почему это случилось и что надо сделать чтобы не повторилось. А в России-нашли крайнего, отругали/уволили/наказали и забыли о проблеме до следующего раза.
                                                                                                  Я просто уверен что никаких выводов сделано не было, переезд на другой хостинг это частичное и временное решение проблемы и через некоторое время мы снова будем читать статью от того же автора об очередном падении.
                                                                                                  Про словарный запас бизнесвумен и штриховку тут сказали, целиком согласен. Собственно это и объясняет первоисточник проблем-отсутствие образования и воспитания.
                                                                                                  • +4
                                                                                                    И вот мне что ещё очень «нравится» в российском бизнесе: главное-найти крайнего. В иностранных компаниях совсем другой подход-понять почему это случилось и что надо сделать чтобы не повторилось. А в России-нашли крайнего, отругали/уволили/наказали и забыли о проблеме до следующего раза.

                                                                                                    Мы работаем попроектно с разными компаниями по миру, в основном США и Европа. Всё ровно то же самое. Впрочем всё это и в западном кино показано и в литературе тыщу раз описано (хотя бы Принцип Питера почитать).
                                                                                                  • 0
                                                                                                    Многократно написали выше:
                                                                                                    1) Битрикс на Шаред хостинге даже без каких-либо изменений должен был когда-нибудь выйти за пределы потребляемых ресурсов и далее по сценарию быть выключенным. Да, timeweb такой timeweb. Удивительно, что это не произошло раньше. А еще битрикс настолько прожорлив, что даже продающие его люди, рекомендуют ставить на VPS. Причем не на каждый — а с честным резервированием ресурсов.
                                                                                                    2) Разработка нового функционала и ремонт старого это немного разные задачи. Уметь надо, но не каждый умеет. Этот навык стоит отдельных денег, а без него получается не всегда и может занять прилично времени. Жаль, но даже в нормальном IT далеко не все это понимают (у ТС это не нормальный айти, это уровень ларечника в интернете).
                                                                                                    3) Про Git уже написали, повторяться не буду.
                                                                                                    • 0
                                                                                                      1. ВСЕ сайты на битриксе должны включить slow query log и проверять его постоянно. Разработчики битрекса, видимо, не знают что такое индексы. Особенно это смешно, учитывая их универсальную структуру, сложные запросы и таблицы-со-всем-подряд.
                                                                                                    • +7
                                                                                                      Статья (а именно скриншоты переписки) в первую очередь характеризует автора и владелицу как нехороших людей, которые не уважают разработчиков, а безосновательно считают их идиотами и лохами. А себя, видимо, самыми умными. Ещё пойму, если бы это сказали на курилке в частном разговоре, но выкладывать на весь Интернет — явно перебор.

                                                                                                      Я бы на месте программистов перестал бы работать с такими клиентами, раз они не умеют по-человечески относиться к людям. Работать с ними — себя не уважать.
                                                                                                      • +2
                                                                                                        Как свидетельстует подпись в эккаунте атора он не имеет отношения к цветочному бизнесу. Он такой-же фрилансер и как и приглащенный им фрилансер-эксперт. Так что фраза «мы облажались» это автор к себе не тоносит т.к. деньги потерял владеец бизнеса а ошибка была неизвестно чья. Т.к. разработчики тот самый сбойный оператор не втсавляли в текст. И посе того как его убрали у меня сразу возщник вопрос. А что же с кассой. Этот оператор был заплаткой т.к. у них не была настроена связь с кассой и не печаталась часть чеков. Ненормативная лексика должна была способствовать продвижению статьи. А статья продвижению сайта автора. См. СЕО, граждане, СЕО.
                                                                                                        Показать снимок экрана
                                                                                                        image
                                                                                                        • +2
                                                                                                          Автор конвертирует свой опыт в известность/узнаваемость/собственное продвижение, используя свои профнавыки и это нормально, кмк.
                                                                                                          «Nothing personal, just business».
                                                                                                          «К этому моменту мы приняли уже более 120 заказов на общую сумму 500 000 руб».
                                                                                                          А вот это уже более интересная информация, про средний чек цветочного интернет-магазина.
                                                                                                          • +2
                                                                                                            Очень жаль, что большинство комментаторов ищет в статьях пользователей какой-то подвох, PR себя и т.д. Может быть вообще нет смысла писать на хабре, а сидеть и комментировать только чужие материалы?

                                                                                                            Решил действительно поделиться материалом и собственным опытом, впервые опубликовав что-то интересное, что вызвало бурную реакцию. А все равно началось обсуждение биографии самого автора… Ok, Delete
                                                                                                            • +2
                                                                                                              Очень жаль, что большинство комментаторов ищет в статьях пользователей какой-то подвох, PR себя и т.д.


                                                                                                              Ну вот такая здесь любознательная и параноидальная недоверчивая публика собралась. Любит разобрать всё до исходников и докопаться до первопричин. И это здорово, потому, что в комментариях обычно содержится уйма полезной информации.
                                                                                                      • 0
                                                                                                        Забавно, что в подобных историях детали не важны в том смысле, что это просто «кармическое»:
                                                                                                        сэкономил в одном месте («а че так дорого? я на фрилансе за эти деньги 5х найму!») — заплатил в другом.
                                                                                                        • 0
                                                                                                          Можно и фрилансера хорошего найти и с фирму плохую. Главное что проверить то невозможно зараннее. Фирма может для не очень перспективных задач найти такого же фрилансера и платить фрилансеру как фрилансеру а с заказчика взять как фирма. И знаю конкретный правда ровно один случай когда очень хорошего фрилансера кинули менеджеры от заказчика и его собственный «импрессарио» когда два менеджера устроили междусобойчик и платили ему за разработку сумму на порядок меньше. Фрилансер как-то узнал прекратил сотрудничество и его пришлось заменять одним сеньором, двумя миддлами на бэкэнде + одним миддлом на фронтенде + привлекать верстальщика дя всех новых фич. Но это скорее исключение из правил. При ценах на фриланс (500р — 3000р а что там делать?) ему надо работать очень много и очень быстро тут не до изысков.
                                                                                                        • +5
                                                                                                          каждый должен заниматься своим делом;
                                                                                                          Я отвечаю за рекламу, флористы – за конечный букет, разработчик – за работоспособность системы, seo-шники – за продвижение и т.д. Никто не должен лезть в чужие процессы. Увы, так бывает не всегда…

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

                                                                                                          • 0
                                                                                                            С вами можно согласиться, но лишь отчасти.
                                                                                                            Представим ситуацию.
                                                                                                            Мне были переданы скрипты, инструкция по установке. Я по инструкцию установил, пользователи пользуются, все довольны. В один прекрасный день, входные данные поменялись, система упала. Первое что я делаю — перегружаю хостинг. Второе — разворачиваю все заново с чистого листа. Далее, если скрипт продолжает падать — обращаюсь к его автору. Мне кажется это довольно логичным поведением. Да, я должен обеспечить наличие электричества, ОС, пакетов, ресурсов ЦПУ и ОЗУ, сетевых — а в остальном, как и что оно делает мне неведомо. Если я не разработчик, то у меня нет такого опыта и знаний, чтобы заниматься отладкой сломавшейся чужой программы. У меня нет знания ни отладки в этих инструментах, ни знания архитектуры программы, ни, предположим, даже базовых знаний ЯП, на котором она написана.
                                                                                                            Я работал в разных фирмах, сейчас я работаю в компании, у которой 30+ тысяч сотрудников, и ключевой софт которой пишет другая компания — и когда что-то ломается в ключевом софте, они незамедлительно (днем или ночью — неважно) обращаются к поставщику. Да, перед этим, конечно, отдел мониторинга / эксплуатации проверяет и сеть, и ОС, и СУБД. И если там проблемы не выявлено — передается разработчику.
                                                                                                            • +2

                                                                                                              Это всегда можно — днем или ночью-то — только там суммы за обслуживание немного другие видимо.
                                                                                                              А второе, вы смешали воедино разработку и поддержку.

                                                                                                              • 0

                                                                                                                Тут, как я понял, не были де-факто обеспечены ресурсы, достаточные для нормальной работы системы.

                                                                                                            • +2
                                                                                                              Почему заказчики идут на фриланс биржи? Потому что, это дешевле, чем нанять даже одного разработчика в штат. У нас в Украине, как и наверное по всему СНГ, ситкация аналогичная — у мелкого бизнеса просто нет на это денег.

                                                                                                              Вот и плучается, хотим дешевле, получаем не поворотливый сайт, виртуальный хостинг, не квалифицированных программистов, отсутствие админа итп итд.
                                                                                                              Чему потом удивлятся? Ну упал сайт, ну не умеют php-жуны логировать медленные запросы, профилировать php код и много чего еще. Они не виноваты, они жуны, платят им соответственно. После таких вот ситуаций, со временем, они научатся и забьют на флинас и мелких бизнес, пойдут в большую аустсорс контору на 2k$/мес, это возможно больше, чем чистая прибыль цветочного интернет-ларька даже в Москве.
                                                                                                              • 0
                                                                                                                Почему заказчики идут на фриланс биржи? Потому что, это дешевле, чем нанять даже одного разработчика в штат.

                                                                                                                Так пусть на хабре ищут, дешевле будет, чем 2к конторе платить :)


                                                                                                                Уверен, что и на… битрикс найдется свой спец.

                                                                                                              • –4
                                                                                                                Автор. Не тратьте деньги не разобравшись.
                                                                                                                Ко мне очень много раз обращались с подобной проблемой хозяева сайтов на битриксе. Причем иногда обращались люди с хорошими серверами. Переезд отстрочит проблему но не решит.

                                                                                                                Первое что вы делаете это включаете slow query log.
                                                                                                                Второе: проводите нагрузочное тестирование
                                                                                                                Третье: нанимаете специалиста по БД и даете ему то что попало в slow query log
                                                                                                                Четвертое: проводите нагрузочное тестирование

                                                                                                                ЗЫ Очень похвально, что вы решились на статью. Готов глянуть бесплатно. Стукните в личку.
                                                                                                                • +1
                                                                                                                  очень похоже, что потерянный 1млн.р, — это даже несколько меньше, чем стоило бы вложить в отладку и тестирование системы в целом. Зато теперь все проверили и работает. Если не считать репутационных потерь (кажется в модели бизнеса нет нажима на постоянных клиентов, может и не страшно), то это просто история успеха выходит! :)
                                                                                                                  • +1

                                                                                                                    200 заказов, 1 миллион рублей, это 5 тысяч на заказ. Подозреваю, что это не прибыль :) Отсюда надо вычесть еще и расходы.

                                                                                                                  • +7
                                                                                                                    Не шарю в битриксах, но из каментов понятно, что сервер помощнее осилил бы его тормоза. Т.е цена вопроса — вдс на каком-нибудь DO за 40$ против нынешних, думаю, 20-и? Вот эта девочка зажопила 20$ на самое сердце бизнеса, а некомпетентные лохи — разрабы?
                                                                                                                    И вопрос автору: почему же вы не занялись администрированием линукса, вы же тоже айтишник? Некомпетентность!
                                                                                                                    • 0
                                                                                                                      Разработчики тоже виноваты, битрикс и шаредхостинг не совместимы, $20-30 за более менее приличный хостинг может позволить любой бизнес, тем более это всего пара часов разработки, так что некомпетентность это часто девиз битрикс компаний, набравших джунов по объявлениям в авито.
                                                                                                                      • 0

                                                                                                                        Иииии… эпичнейшая битва:
                                                                                                                        В левом углу ринга зарубежный DO (Digital Ocean?), в правом — 152-ФЗ (персональные данные). Кто победит? :)

                                                                                                                        • 0

                                                                                                                          Битва уже проиграна до ее начала. И заключительный этап был недавно.

                                                                                                                      • 0
                                                                                                                        а некомпетентные лохи — разрабы

                                                                                                                        Никак не противоречит всему что вы сказали. Когда один единственный индекс превращает перегруженный сервер в скучающий без нагрузки это как то странно выглядит, не находите?
                                                                                                                      • +3
                                                                                                                        «Тыжпрограммист!» (с) Обычный Клиент

                                                                                                                        И в итоге — код, приведший к сбою, вставляли не разработчики. Они свой код знают. Но, конечно же, виноваты именно они, и конечно же, именно они некомпетентны.

                                                                                                                        А вывод простой — не беритесь, разработчики, за разработку и сопровождение, если нет контракта, в котором чётко оговорены обязанности сопроводителя, и любой владелец маленького, но гордого бизнеса, на этом основании при любых проблемах будет считать виновником разработчика и поливать его матом в Вассапе. Нет чёткого ТЗ и контракта? Аминь, бизнесмен всегда может нанять студента за пачку пельменей — кажется, некоторые бизнесмены очень любят эту присказку?
                                                                                                                        • +1

                                                                                                                          Мне это напомнило экононию на спичках айти [примерная беседа]:


                                                                                                                          • Клиент -Никитос, это самое, я тут нашел себе хостера, я перееду к ним. Ок?
                                                                                                                          • Я -Без проблем. Я тебе месяц на переезд дам ок? [бесплатный месяц]
                                                                                                                          • Клиент — Супер. В общем у меня там будет дешевле, что сейчас в месяц, там будет за 6 месяцев.
                                                                                                                          • Я — так это шаред же. Ну да ладно. Раз хост + саппорт у них, без проблем. Главное — чтобы твой сайт подняли [там солянка ужасная]. Если у них будут какие проблемы — пиши. Вот дампы [файлы и база].

                                                                                                                          Спустя халявный месяц и неделю


                                                                                                                          • Клиент — все, перенесли, можешь вырубать!
                                                                                                                          • Я — дайка гляну… Нет, нифига ничего не работает.
                                                                                                                          • Клиент — так вот же сайт-то открывается.
                                                                                                                          • Я — так они ДНС не поменяли :) Подставь вот это в hosts [объяснения что и как]
                                                                                                                          • Клиент — [ругается]
                                                                                                                          • Я — в общем, они там [перечисляю, что надо поправить чтобы сайт завелся как надо]
                                                                                                                          • Клиент — нее, нафиг их, я у тебя остаюсь.

                                                                                                                          Мелкий клиент, онлайн шоп. Экономит на чем попало, в том числе и на хостинге. Я ему помогаю только потому, что давно знаю + в другом месте он попадет на бабки.


                                                                                                                          Я к чему: жадные клиенты, они все жадные, пока не увидят, что из-за своей жадности теряют больше, чем выигрывают.

                                                                                                                          • +1
                                                                                                                            что из-за своей жадности теряют больше, чем выигрывают.

                                                                                                                            К сожалению это работает только для ровно таких же случаев. Меня в каждой следующей компании называют паникером, пока не въезжают в большую часть указанных мной пней. Меня раньше хотя бы «я же говорил» развлекало, теперь уже как то грустно и все.
                                                                                                                          • 0
                                                                                                                            Спасибо всем за комментарии к этой статье и за дискуссию. Очень много дельных советов услышали для себя, и много вещей, с которыми согласны отчасти.

                                                                                                                            У нас проблема не в одном конкретном человеке или какой-то CMS системе (можно и на других движках нормально было отработать, уверен на 100%), и не в том, что такое произошло. Дело в комплексном подходе и системе, в выстроенных процессах внутри коллектива. И именно это привело к такой фатальной ошибке. Я недаром делаю акцент на первопричине, нужно понять, почему так произошло, а не из-за кого или по чьей вине это вышло. Сделать соответствующие выводы, и сделать так, чтобы этого больше не происходило.

                                                                                                                            Зачастую (как правильно здесь было обозначено), за работу отвечают наемные сотрудники, перед которыми стоят определенные задачи. Вся наша команда работает разрозненно, а не как единый механизм. Не в офисе, а удаленно. И у каждого оплата сдельная. Разработчики делают свое, SEO — свои работы, я занимаюсь своим направлениями, владелец старается координировать все это. Параллельно, наверное, у всех есть и другие проекты. Так что среднее арифметическое будет невелико. В этом и заключается основная проблема. Нет ролей (кто за что отвечает) и общего вклада в результат. Пока это все шло на самотек и худо-бедно такой подход работал.

                                                                                                                            Дело также и не в деньгах, поверьте. На таком конкурентном рынке (причем Москва и МО) компания существует уже 2,5 года и хорошо себя чувствует. И сдельные оплаты сотрудников в компании в месяц стоят дороже, чем если бы мы нанимали всех в штат. А то, что такое случилось один раз за 2,5 года не говорит о том, что все изначально было плохо. Лишь дает понять, что мы делаем некоторые вещи не так. Консерватизм присутствует, безусловно — чтобы перемениться, нужен толчок извне, либо тем, кто разбирается, либо какой-то вызванной ситуации. Вот эта ситуация и наступила.

                                                                                                                            Есть ряд проблем (и он достаточно большой), над которыми мы работаем и которые собираемся решить в ближайшее время. И они расставлены в приоритетном для бизнеса порядке ($)
                                                                                                                            • +2
                                                                                                                              Разработчики делают свое, SEO — свои работы, я занимаюсь своим направлениями, владелец старается координировать все это.

                                                                                                                              Даже по этому описанию чётко видно, что за работоспособность магазина, являющегося единственным(?) источником заказов, не отвечает никто. Или все считают, что разработчики, а разработчики не в курсе, что они за это отвечают? Кто, кстати, обнаружил сбой? В его обязанности входил мониторинг или случайно обнаружил?

                                                                                                                              • 0
                                                                                                                                Сбой обнаружил я, и операторы, которые в тот момент заполняли заказы в админке сайта
                                                                                                                                • +1

                                                                                                                                  По моему, все возможности стать вам главным.

                                                                                                                              • 0
                                                                                                                                И именно это привело к такой фатальной ошибке.

                                                                                                                                Справедливости ради, никакого фатального исхода не было.


                                                                                                                                Зачастую (как правильно здесь было обозначено), за работу отвечают наемные сотрудники, перед которыми стоят определенные задачи. Вся наша команда работает разрозненно, а не как единый механизм. Не в офисе, а удаленно. И у каждого оплата сдельная. Разработчики делают свое, SEO — свои работы, я занимаюсь своим направлениями, владелец старается координировать все это. Параллельно, наверное, у всех есть и другие проекты. Так что среднее арифметическое будет невелико. В этом и заключается основная проблема. Нет ролей (кто за что отвечает) и общего вклада в результат.

                                                                                                                                Смешались в кучу кони, люди. Каким образом сдельная оплата (т.е. фрилансеры?) или работа в штате (т.е. по ТК) соотносятся с распределением ролей и задач? При этом сами говорите, что все делают свою работу, а ролей нет, как нет и общего вклада в результат. Как это понимать? Работники ведь делают поставленные перед ними задачи? Если да, то кто виноват в том, что им ставят задачи, не играющие на результат? Или вы хотите, чтобы сотрудники сами себе ставили бизнес-задачи?

                                                                                                                                • 0
                                                                                                                                  Абсолютно ничего не смешалось. Не имеет смысла нанимать толковых людей, а затем рассказать им, что делать. Даже если это сдельные работы. Мы нанимаем умных людей, чтобы они могли рассказать нам, что делать. Уверен, что знаете, кто это сказал. И мы сторонники такого подхода.

                                                                                                                                  И владелец бизнеса не должен думать о том, что у него серверы перегружены. Это задача должна была быть решена гораздо раньше, и предложение должно быть от разработчиков, если они действительно были заинтересованы продолжать работу, а не сидеть сложа руки. К тому же мы велись у них несколько лет и предупредить об этом (хотя бы словесно заставить задуматься) — их задача.

                                                                                                                                  То, что кто-то влезал в EKAM и позволил сделать это — тоже заслуга разработчиков. Владелец бизнеса вообще не имеет к этому никакого отношения. А дал добро, потому что была простая манипуляция тех же разработчиков — пусть лучше сделает специалист, а мы проверим за ним. Проверили…

                                                                                                                                  Задачи им ставят такие, которые приводят к результату. А вот отладить эти задачи у них, увы, не получается. И проконтролировать работу других деятелей — тоже в их ответственности. Так что не понимаю ваш посыл
                                                                                                                                  • 0
                                                                                                                                    Мы нанимаем умных людей, чтобы они могли рассказать нам, что делать. Уверен, что знаете, кто это сказал. И мы сторонники такого подхода.

                                                                                                                                    Конечно знаю. А вы действительно таких нанимаете? Как вы проверяли, что они на самом деле настолько компетентны?

                                                                                                                                    • 0
                                                                                                                                      Видите, не проверяли же. А просто обслуживались с течением времени на протяжении нескольких лет. В какой-то момент это превращается в должное, мол мы никуда не денемся теперь, на крючке, и можно чуть подзабить на проект.

                                                                                                                                      Мы еще с этой командой и под Баден-Баден попадали в сентябре 2017, потом из него выходили 1,5 месяца. Доверились, дали возможность искупить ошибку. Но эта ситуация окончательно дала понять, что нужно менять подрядчика.

                                                                                                                                      P.S. Наверное читающие не до конца понимают посыл данной статьи. Во всем произошедшем виноваты только мы и никто другой.
                                                                                                                                      • 0
                                                                                                                                        Во всем произошедшем виноваты только мы и никто другой.
                                                                                                                                        Именно этого мы и хотели услышать! Рад если такое осознание произошло у хозяев бизнеса.
                                                                                                                                    • 0

                                                                                                                                      Кто выбирал хостинг-провайдера и тарифный план? Разработчики вообще в курсе ограничений этого плана были? В курсе были посещаемость какая обычно и какая прогнозируется?


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

                                                                                                                                  • –2
                                                                                                                                    Сделка чисто русский атавизм системы Тейлора который юзают только у нас. Сделка 1. Разлагает менеджмент которому плевать на организацию работ ок работник сам будет бегать в поисках работы и заискивать перед менеджером чтобы получить неё 2 приводит к тотальному браку в производстве что вы и подтверждаеие