Быстрый поиск в «Альфа-Клике»

в 14:28, , рубрики: java, Альфа-Банк, Альфа-Клик, Блог компании «Альфа-Банк», Веб-разработка, интернет-банк, поиск, метки: , , ,

Всем привет! Меня зовут Тамара, я – разработчик интернет-банка «Альфа-Клик».

Недавно команда Альфа Lab запустила новый поиск по Клику. Ежедневно интернет-банком пользуются сотни тысяч клиентов, и даже такая, казалось бы небольшая, доработка упростит им жизнь и поможет быстрее найти нужную функцию или получателя платежей.

Быстрый поиск в Альфа-Клике

На Хабре много клиентов Альфы, и будет проще и быстрее спросить напрямую – как бы вы хотели пользоваться таким сервисом, какие функции вам были бы удобны и полезны? Предлагаю обсудить это в комментариях.

Несколько слов о том, как работает поиск и о его возможностях – под катом.

Теперь клиент может мгновенно переходить на оплату услуг мобильной связи, ЖКХ, интернет-провайдера, делать переводы на свои и чужие счета.
Поиск переводов внутри интернет-банка

Получать информацию по счетам, картам и кредитам.
Мгновенный поиск по счетам

И многое другое.
Мгновенный поиск по возможным операциям с картами

Немного о технике

Для реализации полнотекстового поиска была выбрана open source библиотека Apache Lucene.

На рынке представлено несколько популярных решений, неплохой обзор которых уже есть на Хабре. Мы выбрали Lucene, т.к. это простое и вместе с тем удобное решение. К тому же этот движок написан на java, а мы, в большинстве своём, являемся java-разработчиками.

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

Информация для построения индекса располагается на разных серверах и платформах, поэтому для её получения используются web-сервисы. Пользователь интернет-банка, совершая операции, может изменить данные в системе: переименовать счёт или карту, создать новый шаблон, удалить финансовую цель. По любому подобному событию асинхронно запускается процесс переиндексации, в результате данные кэша для поиска всегда остаются up-to-date.

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

Автор: ZTamara

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js