Анатолий Пласковский "Миллионы карточных платежей...

Preview:

Citation preview

Миллионы карточных платежей за месяц

Анатолий Пласковский, руководитель группы исследований производительности

или как потерять 10 000 евро на нагрузочном тестировании

Содержание

01 Моя стрельба

02 Моя цель

03 Мое исследование

Моя стрельба

4

Пример

Алгоритм любой стрельбы

Описываем профиль

Обстреливаем цель

Снимаем метрики Анализируем результаты

Цели бывают разные

Моя цель

Сервис электронных платежей

Множество типов финансовых операций

Операции с банковскими картами

Мы получили лицензию на процессинг!

О производительности процессинга

› Производительность ключевых микросервисов ограничена лицензией

› Расположение ключевых микросервисов ограничено лицензией

› Познания и опыт партнеров в исследованиях минимальны

И что с этим со всем делать???

14

Пример

Но с бережной заботой о пользователях

Пополнение: с карты на счёт

Как все работает

Яндекс.ДеньгиТанк-генератор

Банк-эквайр

MasterCard

План эксперимента

Связь между нами и банком

Провайдер маршрутизации

Терминал с кодом категории оплаты (MCC)

Что ещё нужно учесть?

› Снятие комиссий на каждом шаге

› Снятие лимитов на число и сумму операций на каждом шаге

› Уведомление собственных и партнёрских Служб Безопасности

Итоговая комиссия

Моё исследование

5 экспериментов за 23 дня

День 1 День 10 День 12 День 23День 18

Эксперимент 1

Результаты

1. Выедаем CPU на БД нашего Процессинга

2. Накопление блокировок на счетах

3. Доработка: оптимизация ряда запросов к БД

4. Проведено: 17 000 операций

5. Списания: успешно прошли за 10 минут

Эксперимент 2

Результаты

1. Уперлись в шифровальный модуль (HSM) нашего Процессинга

2. Накопление блокировок на счетах

3. Доработка: расширение пула счетов

4. Проведено: 24 778 операций

5. Списания: успешно прошли за 10 минут

Эксперимент 3

Результаты

1. Проведено: 50 000 операций

2. Списания: успешно загрузились в БД Процессинга за 40 минут

3. Потолок списание: размер файла списаний 104 Мб, ограничение в Oracle 4 Гб, не более 2 млн. операций на сегмент

Эксперимент 4

Суточный эксперимент с входной интенсивностью 15 блокировок в секунду и последующим потоком списаний

Результаты

1. Файл со списаниям пришел к нам в 18:00 следующего дня с задержкой в 1,5 часа

2. Процессинг обработал файл с 1 135 000 записей за 2 часа 10 минут

3. Полный разбор данных в системе закончился в 3:23

4. Массированный обстрел повсеместно привел к росту размера логов

Кроме того

1. Возникли проблемы с балансировкой запросов на фронты

2. Проявилась деградация производительности антифрод-системы

Эксперимент 5

Эксперимент нескольких суток с генерацией максимально возможного объёма операций за сутки (этап одновременной работы под потоком авторизаций с заданной интенсивностью и разбором пула клирингов)

Результаты

1. Процессинг успешно выдержал многосуточный эксперимент

2. Файл со списаниями пришел к нам в 18:00 следующего

3. Процессинг обработал файл с 1 400 000 списаниями за 1,5 часа

4. Полный разбор данных в системе закончился в 6:07

операций

38

Пример

А вам посылка от MasterCard!

0,05 евро за одну операцию

Вернемся к выданному нам терминалу

Провайдер маршрутизации MCC: 6051

Пожалуйста, будьте

Смелыми на эксперименты

Мудрыми при продумывании деталей

Понимающими и прощающими при общении с партнёрами

Контакты

@fourwingedsun

plaskovskii@yamoney.ru

Ваши вопросы?

Анатолий ПласковскийРуководитель группы исследований производительности

Recommended