OptIt – система СМС-маркетинга

OptIt – система СМС-маркетинга

Задача

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

Решение

Предлагаемое решение состоит из нескольких отдельных веб-приложений, интегрированных друг с другом через REST службы и RMI, используя единую базу данных и общие "основные" компоненты. Основной целью разделения решения на несколько независимых модулей является возможность размещать их на отдельных аппаратных средствах, что в результате обеспечивает высокую масштабируемость решения и гарантирует, что большая нагрузка на определенные подсистемы приложения (например, очередь обработки массовых СМС-кампаний с более чем 100 000 получателей) не влияет на работу других подсистем приложения и работу пользователей.       
  • Ядро OptIt представляет собой набор общих компонентов, используемых другими веб-приложениям, включая аутентификацию пользователей, общие правила бизнес-логики, сервлеты, обработку ошибок, функции СМС-доставки, функциональность обработки входящих сообщений, очереди отправки сообщений, и т.д.
  • Хранилище картинок является невизуальным приложением, в первую очередь использующимся другими модулями OptIt для хранения изображений и обеспечивающее высокую скорость и эффективный доступ к ним.
  • Провайдер – это веб-приложение с пользовательским интерфейсом, позволяющим компаниям и их сотрудникам создавать рекламные кампании, регистрироваться в системе, создавать интересы и ключевые слова, на новости по которым пользователи могут подписаться, чтобы получать информацию связанную с их интересами.
  • Сообщества является веб-приложением с богатым пользовательским интерфейсом для конечных пользователей, где можно зарегистрироваться, персонализироваться, выбрать свои интересы, подписаться на новости, создавать и управлять своими сетями, загружать фотографии и т.д.
  • «Сито» представляет собой веб-приложение для администраторов портала. Оно имеет минималистичный легкий пользовательский интерфейс и в то же время удобные и мощные функции для фильтрации ненормативной лексики, неадекватных изображений, а также служит для модерации контента. Основной целью при его разработке было оставить его максимально простым и быстрым, насколько это возможно, чтобы предоставить администраторам быстрый и эффективный инструмент для управления содержанием портала, включая поиск, фильтрации, пакетную обработку данных, импорт и экспорт данных.
  • «Мобильные предложения» является веб-приложением, позволяющим конечным пользователям регистрироваться в OptIt и подписываться на новости по интересам со своих мобильных устройств либо с помощью простого виджет-подобного пользовательского веб-интерфейса, а так же с помощью отправки СМС-сообщений на определенные номера.
  • API представляет собой приложение без пользовательского интерфейса, которое позволяет приложениям сторонних разработчиков реализовывать интеграцию с OptIt и использовать его функциональные возможности и предоставляемые услуги OptIt автоматически, без необходимости заходить в веб-интерфейс пользователя. Он также служит внутренним нуждам OptIt для обработки СМС-уведомлений о доставке сообщений, а также для обработки других входящих запросы от внешних приложений, используемых OptIt.
Отправка СМС-сообщений организована через надежные отказоустойчивые очереди сообщений с интеллектуальной системой обработки ошибок, обеспечивающих гарантированную доставку. На каждую попытку отправить СМС-сообщение проверка результатов выполняется в отдельной очереди и сообщения снова становятся в очередь, если отправка не удается по каким-то причинам, будь то сбой в работе сети, проблема с интернет подключением или временная недоступность оператора сотовой связи. СМС может не быть доставлено получателю, только если номер заблокирован или отключен провайдером сотовой связи.

Архитектура

Каждое приложение имеет многоуровневую архитектуру, состоящую из следующих слоев:
  • интерфейсный слой служит для представления пользовательского интерфейса, а API созданы для интеграции со сторонними приложениями;
  • слой бизнес-логики управляет логикой приложения, аутентификацией пользователя, разграничением доступа, очередями обработки сообщений, обработку исключений, отвечает за проведение СМС кампаний;
  • интеграционный слой служит для реализации внутренней интеграции между приложениями через REST службы и RMI;
  • уровень доступа к данным абстрагирует данные в базе от бизнес-логики;
  • база данных используется для хранения данных приложения.

Итог

Высокоэффективной аутсорсинговой команде IT-специалистов со значительным опытом в веб и серверных Java-технологиях удалось проанализировать архитектурные недостатки, проблемы проектирования и узкие места в производительности ранее существующей реализации и создать новое хорошо структурированное, надежное и масштабируемое решение с использованием более мощных библиотек и технологий, сократив время на реализацию следующего поколения программного обеспечения клиента.
Разработанное решение обеспечивает максимальное удобство для пользователей и обеспечивает гарантированную доставку СМС-сообщений. Оно способно отправлять более 80 миллионов СМС- сообщений в месяц, а с ростом клиентской базы может быть масштабировано для поддержки еще более интенсивного потока СМС-сообщений с минимальными усилиями.

Используемые технологии

Похожие проекты

Система коммуникации с пользователями

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

OptIt – система СМС-маркетинга

Проект был сделан для частной компании, предоставляющей услуги маркетингового решения на основе текстовых СМС-сообщений.

ПО для компании в сфере недвижимости

Портал на Sharepoint для финской компании, предоставляющей маркетинговые и брокерские услуги компаниям, работающим в сфере торговой недвижимости и ее аренды.