Переход на SOA: Технологические аспекты SOA-2010 Фирстов Олег, начальник отдела технической архитектуры и интеграции 9 сентября 2010 г.
О «Ренессанс Кредит» «Ренессанс Кредит» товарный знак КБ «Ренессанс Капитал» Стратегическими направлениями деятельности банка являются потребительское кредитование и привлечение средств физических лиц. Сегодня банк предлагает потребительские кредиты, кредитные и расчетные карты, вклады. КБ «Ренессанс Капитал» является частью группы «Ренессанс Кредит», которая также включает в себя ООО «Банк Ренессанс Капитал» в Украине. География деятельности Группы «Ренессанс Кредит» охватывает 59 регионов России, 16 областей Украины и Автономную Республику Крым и включает 57 представительств, 39 отделений и точек продаж в торговых сетях. По итогам 2008 года «Ренессанс Кредит» вошел в TOP 5 крупнейших банков России в сегменте потребительского кредитования (согласно рейтингу РБК-Рейтинг). Клиентская база банка насчитывает более 3,5 млн человек. Банк обладает одной из лучших систем управления рисками по отрасли. Группа «Ренессанс Кредит» - часть международной инвестиционной группы «Ренессанс Групп».
Внедрение SOA
Что это дало (сразу)
SOA Что позволяет говорить, что ваша организация использует SOA? 5
SOA Что не позволяет говорить, что ваша организация использует SOA? –Вы используете некоторый программный продукт X –Вы применяете технологию Y –Вы выполнили проект по интеграции приложений 6
SOA Что позволяет говорить, что ваша организация использует SOA? –Вы создаете и переиспользуете программные компоненты –У вас есть платформа, позволяющая быстро компоновать из компонент новые процессы 7
Переход на SOA Мигрировать на SOA не возможно –SOA это не цель, которую можно достигнуть –SOA это путь, которым можно идти 8
Переход на SOA SOA не предлагает ничего принципиально нового –Она лишь упорядочивает «старые добрые» подходы к разработке –Благодаря прогрессу в технологиях она переносит эти подходы на более глобальный уровень 9
Приложение для Клиентского сервиса Презентационный уровень (Presentation Tier) Уровень бизнес логики (Business Logic Tier) Уровень данных (Data Tier)
Такая же картинка от вендора 11 Ой.. Это была картинка из статьи N-Tier Application Development with Microsoft.NET
«Универсальный фронт-енд»
Переход на SOA SOA не решит всех ваших проблем –Более того, она добавит и новых, принципиально других Но выжить без нее на рынке сегодня чрезвычайно сложно 13
14
Обеспечение отказоустойчивости 15 Business Process Engine ESB Application AApplication BApplication CApplication D
Обеспечение отказоустойчивости 16 Business Process Engine ESB Application AApplication BApplication CApplication D Business Process Engine ESB Business Process Engine ESB Load Balancer Function Set 1Function Set 2 Single Logical Unit
Практические рекомендации 1. Относитесь внимательнее к интерфейсам сервисов и их грануляции
Шина Важность правильной грануляции сервисов Система голосового Меню (IVR) Система голосового Меню (IVR) Карточная система Карточная система Сервис Веб-Сервис Авторизация Бизнес логика Бизнес логика Авторизационная БД Авторизационная БД АБС Кредиты
19 Важность правильной грануляции сервисов Система голосового Меню (IVR) Система голосового Меню (IVR) Карточная система Карточная система Шина Сервис Сервис фасад для IVR Сервис фасад для IVR Авторизация Авторизационная БД Авторизационная БД АБС Кредиты Сервис Бизнес логика Бизнес логика Бизнес логика Бизнес логика Бизнес логика Бизнес логика Маршру- тизация Маршру- тизация Бизнес логика Бизнес логика
Практические рекомендации 1. Относитесь внимательнее к интерфейсам сервисов и их грануляции 2. Используйте BPEL только для долгоживущих процессов
21 Генерация пин-кода Расчет CVV Проверка активированности карты Активация карты Проверка наличия пин-кода Сброс пин-кода Установка пин-кода Информирование о новом пин-коде Карточная система HSM Telephony Crypto API Композитный сервис
Практические рекомендации 1. Относитесь внимательнее к интерфейсам сервисов и их грануляции 2. Используйте BPEL только для долгоживущих процессов 3. Не используйте долгих HTTP сессий
Веб сервер 23 Клиент веб-сервиса Сервер бизнес-логики Процесс Queue ? HTTP cессия
24 Клиент веб-сервиса Веб-сервис Бизнес данные Тикет Не готов Тикет Бизнес данные
Практические рекомендации 1. Относитесь внимательнее к интерфейсам сервисов и их грануляции 2. Используйте BPEL только для долгоживущих процессов 3. Не используйте долгих HTTP сессий 4. Не используйте SOA для перекачки большого количества batchевых данных 5. Не бойтесь ошибиться
Вопросы