место в рейтинге
  • 86238
  • 85
  • 13
Нравится блог?
Подписывайтесь!

Техническая структура Wooppay. Показать всё что скрыто

От автора

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

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

С одной стороны, сервис с динамическим ростом нагрузки и требованием высокой доступности, с другой жесткие меры информационной безопасности. Проблему масштабируемости можно решить путем использования IaaS (проще говоря, облака), но размещать где-то, в каком-то облачном датацентре финансовую и конфиденциальную информацию деятельности ПС не хотелось (не по фэншую это как-то). Тогда, мы просто напросто возьмем и купим 6 серверов, 2 коммутатора и 2 маршрутизатора, засунем их в стойки в 2-х датацентрах и получим «офигительную» отказоустойчивую архитектуру — одним словом, как два пальца об асфальт.

Но, ПС Wooppay — классический пример высоконагруженной системы и поэтому, как любая система такого класса, в конце концов, исчерпает свободные ресурсы выделенных аппаратных средств. Понятно, что можно наращивать мощности вставляя планки памяти, диски, процессоры (вертикальное масштабирование) или купить и воткнуть в балансировщик новый сервер (горизонтальное масштабирование), но процесс покупки данных «обновлений» затягивается, затем идет доставка, установка, тестирование. Снижение производительности сервиса недопустимо даже в пиковые дни/часы нагрузки. Теперь немного логических рассуждений: мы видим, что нагрузка на сервис не больше 70%, но в конце декабря она уже составляет 120% (появляются длинные очереди, отказ в обслуживании и прочие прелести недостаточной производительности), мы быстро установили сервер и распределили нагрузку, тем самым справились в пик, но затем все возвращается к первоначальному состоянию: нагрузка уже ниже 40% и половина ресурсов простаивают, а это лишние расходы на колокейшн, электроэнергию, сопровождение. В нашем случае данный способ построения технической архитектуры неудобен — это раз; нерентабелен — это два.

А почему бы не рассмотреть вариант размещения веб и транзакционных серверов сервиса в «облаке», а серверов БД в ЦОДах (центр обработки данных)? Это позволит нам оперировать необходимыми вычислительными мощностями и «потреблять» ровно столько, сколько нужно. Еще одним плюсом является уменьшение парка обслуживаемой техники, повышение утилизации ресурсов в мировом масштабе (привет Гринпису =). Лишний сервер потребляет электроэнергию, а следовательно выделяет тепло, его необходимо охлаждать и т. п., а в ЦОД поставщика облачных сервисов ведутся постоянные работы по снижению тепловыделения, оптимизации охлаждения и т.п.). БД в ЦОД и на физическом сервере несомненно будет демонстрировать большую производительность, а собственные аппаратные фаерволы и маршрутизаторы CISCO позволяют достаточно хорошо защитить периметр изнутри.

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

Важным фактором работоспособности платежной системы является система мониторинга: именно она помогает определить в какой момент времени необходимо запустить либо остановить дополнительный экземпляр сервера. Все необходимые инструменты мониторинга и масштабирования предлагаются поставщиком IaaS в виде сервисов и API.

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

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

Что же мы имеем в итоге:

  • N (динамическое число) активных веб-серверов, работающих через балансировщик нагрузки;
  • N активных серверов обработки транзакций, работающих через балансировщик нагрузки;
  • N серверов для хранения сессий, неперсонифицированной и не финансовой информации;
  • отказоустойчивый кластер БД с полным дублированием аппаратной части;
  • VPN туннели из облака к ЦОДам через разных провайдеров доступа к интернет.
 

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

 

Руководитель отдела технической инфраструктуры Александр Бондаренко.

Платёжная система Wooppay
Начните работать с Wooppay, почувствуйте, с какой лёгкостью вы делаете те вещи, на которые тратили своё личное время. Пользуйтесь Wooppay и личного времени станет больше. Стоит только придумать, чем его занять.
25 июля 2013, 17:46
3280

Загрузка...
Loading...

Комментарии

Оставьте свой комментарий

Спасибо за открытие блога в Yvision.kz! Чтобы убедиться в отсутствии спама, все комментарии новых пользователей проходят премодерацию. Соблюдение правил нашей блог-платформы ускорит ваш переход в категорию надежных пользователей, не нуждающихся в премодерации. Обязательно прочтите наши правила по указанной ссылке: Правила

Также можно нажать Ctrl+Enter

Популярные посты

Школа High Tech High – дети здесь самостоятельны так же, как и профессионалы в офисах

Школа High Tech High – дети здесь самостоятельны так же, как и профессионалы в офисах

Известный казахстанский бизнесмен становится первопроходцем и создает школу, о которой можно только мечтать. То, что мы, как взрослые, делаем в бизнесе, дети будут делать в этой школе.
Zhumanova
24 апр. 2017 / 16:29
  • 21732
  • 5
Кому в Казахстане жить хорошо? Почему мы остаёмся в топ-5 стран мира по числу самоубийств

Кому в Казахстане жить хорошо? Почему мы остаёмся в топ-5 стран мира по числу самоубийств

Всё ли так хорошо у жителей Казахстана? Почему-то наша страна сохраняет твёрдые позиции в первых строчках мировых рейтингов по числу самоубийств.
openqazaqstan
24 апр. 2017 / 16:54
  • 4273
  • 20
«Казпочта» отжигает. Редкий шанс вспомнить агрессивные советские очереди

«Казпочта» отжигает. Редкий шанс вспомнить агрессивные советские очереди

Люди старшего и среднего поколений помнят шумные, недобрые, грубо ругающиеся очереди советских лет. Увидеть, как это было, можно теперь разве что в каком-нибудь фильме. Хотя не только.
openqazaqstan
26 апр. 2017 / 16:14
  • 2965
  • 33
Президент велел делиться. Почему бы казахстанским миллиардерам не послушаться?

Президент велел делиться. Почему бы казахстанским миллиардерам не послушаться?

Президент Назарбаев призвал крупных бизнесменов делиться с народом, следуя примеру своих коллег из развитых стран. В Казахстане, действительно, сегодня много богатых людей.
openqazaqstan
27 апр. 2017 / 14:09
  • 2506
  • 26
Юный алматинец покорил Первый канал на шоу Максима Галкина

Юный алматинец покорил Первый канал на шоу Максима Галкина

Житель Алматы по имени Марк Усачев недавно оказался на телепрограмме "Лучше всех", с успехом идущей на Первом канале России. 9-летний алматинец покорил публику своими недюжинными знаниями.
Seattle
24 апр. 2017 / 16:59
  • 2623
  • 2
Любовница. «Мне часто доставались мужчины, поломанные браком»

Любовница. «Мне часто доставались мужчины, поломанные браком»

Мне часто доставались мужчины, поломанные браком. Таких почти сразу видно – у них маска состоявшегося мужчины по швам трещит. И каждый из них реагирует по-своему. Поясню на паре примеров.
Jamiklisa
28 апр. 2017 / 14:21
Преподаватели и ЭКСПО: «Пока газеты пишут одно, нас заставляют покупать билеты на выставку»

Преподаватели и ЭКСПО: «Пока газеты пишут одно, нас заставляют покупать билеты на выставку»

Чтобы вы знали, чем занимаются в сфере образования - педагоги являются основой массовок. Какое отношение к учителям со стороны государства, такого же уровня и качество образования.
SaukovV
26 апр. 2017 / 16:05
  • 2429
  • 16
Инстаграм – это «рынок девушек» и он круче любой базы данных

Инстаграм – это «рынок девушек» и он круче любой базы данных

Для меня Инстаграм – это рынок. Почему? Ничего не изменилось, девушки все так же бьются в попытках наиболее выгодно себя продать, посредством привлечения внимания.
Annette_Scherer
24 апр. 2017 / 22:35
  • 2440
  • 5
Как стать караоке-шлюхой в Корее? Твои обязанности – развлекать гостя, вот и всё

Как стать караоке-шлюхой в Корее? Твои обязанности – развлекать гостя, вот и всё

Я думаю, многие видели различные объявления в интернете о наборе девушек в караоке-клубы в Южную Корею. Садитесь поудобнее, я вам сейчас расскажу что это за шняга.
savira6
28 апр. 2017 / 17:02
  • 2319
  • 19