Пятнадцать лет строю и масштабирую распределённые системы — застал переход индустрии от bare-metal серверов и монолитов к cloud-native, Kubernetes и GitOps. Берусь за то, что команды откладывают: технический долг, выкладка релизов с нуля и удержание систем в рабочем состоянии.
Шесть переходов, которые сегодня продают готовыми решениями. Я проходил их, когда готовых решений не существовало.
Tzu Chi Foundation Singapore
Благотворительный фонд, Сингапур · 2022 · Единственный разработчик, фронтенд и бэкенд
Ситуация
Фонд собирает средства кампаниями, поэтому трафик приходит всплесками — и именно в эти часы сайт не имеет права лежать.
Что сделано
Разработал портал — модуль онлайн-пожертвований, календарь мероприятий и новостной блок на обоих языках — и оптимизировал клиент-серверное взаимодействие и платёжные формы под трафик, который приносит кампания.
Что построено
Модуль онлайн-пожертвований
Календарь мероприятий с регистрацией
Новостной раздел, публикуемый на обоих языках
Фронтенд и бэкенд портала
В цифрах
Доступность на пиках акций: 91 % → 99.9 % — На пиках возвращались 502 и 504
Транзакция пожертвования: 12-15 с → <1.8 с — Сорвавшееся пожертвование — жертвователь, который не повторит
Локали: 2 языка — Английский и китайский
Что изменилось
Доступность на пиках акций — с ~91% до 99.9%, транзакция пожертвования — с 12-15 секунд до полутора.
В чём была сложность
Оптимизация клиент-серверного взаимодействия и платёжных форм под экстремальный трафик: до этого пики отвечали 502 и 504 — то есть отказ приходил ровно в момент, когда жертвователь готов был платить.
Фонд собирает средства кампаниями, поэтому трафик приходит всплесками. Часы, когда сайту меньше всего можно падать, — ровно часы максимальной нагрузки.
Пожертвование — платёжный путь в благотворительном контексте: сорвавшаяся транзакция это не потерянная продажа, а жертвователь, который не попробует снова.
Две письменности в одной вёрстке, и контент в обеих ведут не технические сотрудники.
Чем подтверждается
Работа по договору с заказчиком. Исходный код и внутренние замеры остаются у него, и цифра выше — его, а не публичный бенчмарк.