Опыт использования платформы Google Apps Engine для биллинговой системы

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

В качестве основы для своей платформы компания sms2ru выбрала облачный сервис Google App Engine(GAE). Этот сервис позволяет развернуть на серверах Google собственное ПО на любом из доступных языков: Python, Java или Go и надежно защититься от любых нагрузок и атак. У любого серьезного стартапа всегда возникают проблемы с прогнозированием нагрузок. Любая пиковая нагрузка или крупный клиент могут спровоцировать отключение сервиса, сервер может не выдержать и отключится из-за превышения установленных квот на использование ресурсов. При этом не будет технических возможностей расширить парк серверов в короткие сроки.

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

Каждая минута простоя — это потерянные SMS, не полученные пользователем услуги и, как следствие, негативное восприятие как интернет-сервиса, так и работы агрегатора. Компании sms2ru удалось решить эту проблему, и сегодня их платформа падает реже, чем серверы операторов.

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

Особенно хорошо это проявилось во время недавней DDoS-атаки, продолжавшейся продолжавшейся около полутра недель: cервис работал в штатном режиме — Google дает практически непробиваемую защиту и все, что требуется от клиента, это оплатить дополнительные нагрузки. Получив счет за эту атаку в размере 11 долларов, sms2ru еще раз убедилась в эффективности использования облачной платформы Google.

Справедливости ради нужно отметить, что есть альтернатива Google Apps Engine — сервис Amazon EC2, который так же дает доступ к вычислительным мощностям и полному контролю над ресурсами. Выбор в пользу Google компания sms2ru сделала из-за более развитой инфраструктуры GAE, где для создания работоспособного высоконагруженного приложения, достаточно лишь способного программиста, и нет необходимости в системных администраторах.

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