Search

Home > SDCast > SDCast #72: в гостях Ильяс Салихов, директор по технологиям в компании Intaro и проекте retailCRM
Podcast: SDCast
Episode:

SDCast #72: в гостях Ильяс Салихов, директор по технологиям в компании Intaro и проекте retailCRM

Category: Technology
Duration: 02:12:18
Publish Date: 2018-01-23 06:50:39
Description: У меня в гостях Ильяс Салихов, директор по технологиям в компании Intaro и проекте retailCRM. В этом выпуске мы с Ильясом обсуждаем различные аспекты разработки, начиная от технических составляющих и заканчивая различными “soft skills” темами. В начале Ильяс рассказал про проект retailCRM, как он появился, какие решает задачи, как устроен и работает. Обсудили мы архитектуру проекта и используемые технологии. Под капотом проекта используются: PHP/Symfony/Doctrine, PostgreSQL, Redis, сервисы на Python и Go и много чего ещё. RetailCRM — это SaaS с большим количеством пользователей, где под пользователями понимается не конкретный человек, а целая компания, использующая retailCRM, внутри которой уже работает некоторое количество человек-пользователей. Сейчас сервис используют порядка 5000 магазинов, то есть пользователей-компаний, 30 млн хитов в сутки. Ильяс рассказал, как они организуют хранение разных пользователей-компаний в базе данных и как организована работа бэкенда с этими данными. Забегая вперёд скажу, что retailCRM — это по большому счёту монолит на PHP/Symfony, где каждый пользователь-компания живёт на своём поддомене, однако все запросы обрабатываются этим самым монолитным приложением, а данные каждого пользователя-компании — это отдельная схема в базе данных PostgreSQL. Также Ильяс рассказал про архитектуру и программные компоненты всей системы в целом. Обсудили мы вопросы миграции данных и выкладки новых версий компонентов, задачи мониторинга и обслуживания и другие сопутствующие вопросы. Не обошли мы стороной и различные около технические темы в разработке, такие организация и инструменты командной разработки, вопросы найма и оценки квалификации программистов, расширение кругозора и обмен знаниями внутри компании. Ссылки на ресурсы по темам выпуска: * Beanstalkd (https://github.com/kr/beanstalkd) — простое решение для организации очередей * Доклад Ильяса про варианты кеширования в Doctrine и тегированный кеш “Extended Doctrine Cache” (https://www.youtube.com/watch?v=haZ1BS1QoCM) * Статья Андрея Смирнова “ (http://smira.ru/posts/20081028web-caching-memcached-4.html)Проблема одновременного перестроения кэшей” (http://smira.ru/posts/20081028web-caching-memcached-4.html#) * Доклад Ильяса “Особенности построения SaaS-сервиса на Symfony2” (https://www.youtube.com/watch?v=VNGuS-UB6DM) * GoSSHa (https://github.com/YuriyNasretdinov/GoSSHa) — утилита быстрого параллельного выполнения команд на тысячах серверов * dplr (https://github.com/muxx/dplr) — обертка над GoSSHa на PHP * Pinba (http://pinba.org/) — MySQL storage engine that acts as a realtime monitoring/statistics server for PHP * Intaro Pinboard (https://github.com/intaro/pinboard) — Realtime PHP monitoring system which aggregates and displays Pinba data * pinba-bundle (https://github.com/intaro/pinba-bundle) — Symfony bundle for pinba timers sending with time of operations execution for Doctrine, Twig and Memcache * custom-index-bundle (https://github.com/intaro/custom-index-bundle) — создание нестандартных индексов (например, индексы на выражение, partial-индексы, gist/gin-индексы) в PostgreSQL через аннотации в Doctrine * twig-injection-bundle (https://github.com/intaro/twig-injection-bundle) — бандл позволяет добавить событийную модель в twig для слабой связности шаблонов * Канал Intaro Development на Youtube (https://www.youtube.com/channel/UCU1-Ee0E9PhZVJeibRea3eA) с записями докладов с митапов Intaro Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
Total Play: 0

Some more Podcasts by Konstantin Burkalev

50+ Episodes
RadioJS