Решения: Интернет-магазин, Symfony
О заказчике
ООО «Медиа Интернет Технолоджис» (MEET Marketing) занимается предоставлением услуг в области маркетинга на условиях аутсорсинга. MEET Marketing помогаем компаниям поддерживать эффективные маркетинговые коммуникации в условиях экономии ресурсов.
Главная страница
Задачи проекта
Разработать сайт, предоставляющий такие сервисы как:
- Расчет стоимости страховых полисов в режиме on-line;
- Сравнение стоимости и условий страхования в разных страховых компаниях по запросу клиента;
- On-line заказ страховых полисов.
Страховой рынок очень динамичен, поэтому страховые компании постоянно меняют как условия страхования, так и способ расчета страховой премии. В то же время, основной ценностью портала strahovka.ru является предоставление актуальных данных по страхованию. В этих условиях наиболее важным с точки зрения технологического решения было предоставить механизм, который позволял бы изменять способ расчета страховки (логику и коэффициенты) без перепрограммирования системы. Такой механизм позволяет производить изменение способа расчета страховки без участия разработчика ПО силами аналитика в области страхования.
Заполнение запроса пользователем на расчет стоимости страховки в различных страховых компаниях
Результат расчета стоимости страховки
Технологии проекта
На стороне сервера
На стороне сервера использовался фреймворк Symfony на базе интерпретатора PHP версии 5.2.10 с расширением eAccelerator.
Преимущества Symfony:
- высокие показатели производительности;
- парадигма MVC;
- независимость архитектуры, все неиспользуемые компоненты можно отключить;
- более жесткая архитектура (по сравнению с Zend), позволяющая создавать понятный и легкосопровождаемый код;
- большое количество плагинов (готовых компонент) и сниппетов (полезных минифункций), в настоящий момент в коллекции около 1000 плагинов самых разных назначений, среди который есть компоненты аутентификации и авторизации, OpenID, работы с RSS, PDF, интеграции с веб-сервисами и приложениями (например, Flickr и GoogleMaps) и многие другие;
- развитый механизм работы с БД (propel , doctrine, PDO);
- мощная система кеширования, поддержка работы до 6 систем кеширования (file, sqlite, memcached, APC, eAccelerator, xCache);
- поддержка работы с AJAX, развитые компоненты для работы с AJAX и ExtJS;
- комьюнити Symfony активно развивается, помимо новых плагинов постоянно пополняется документация и wiki, при этом документация — это не сухой справочник, а содержит множество примеров и best practice.
Базы данных
В качестве СУБД в проекте использовалась PostgreSQL – объектно-реляционная система управления базами данных.
Преимущества PostgreSQL:
- Надёжность (полная поддержка ACID, MVCC, ссылочной целостности, транзакций);
- Богатые возможности (большое количество языков разработки, большое количество расширений и многое другое);
- Высокая производительность (гибкие возможности по настройке; различные виды индексов GiST, GIN, B-tree, Hash);
- Масштабируемость (партицирование таблиц, репликация, кластеризация);
- Хорошая поддержка со стороны сообщества разработчиков, наличие коммерческой поддержки;
- Открытый исходный код (распространяется на основе BSD-лицензии).
Результаты
Все поставленные в проекте задачи были успешно решены.
Решение основной технологической задачи в проекте по обеспечению средств настройки правил расчета стоимости страховых полисов для разных страховых компаний было сделано следующим образом:
- все правила расчета настраиваются в стандартном Excel файле, в котором указываются входные параметры расчета (например, марка автомобиля, год выпуска, стаж вождения) и Excel формулы, определяющие привила расчета стоимости;
- Excel-файл автоматически обрабатывается системой и в соответствии с заданными в этом файле формулами производит on-line расчет страховых полисов под запросы посетителей сайта.
Пример настройки входных параметров
Прикрепление файла с формулами расчета к страховой компании