Сервер очередей
В процессе роста во многих проектах появляется необходимость решения ряда задач, связанных с очередями. Часто очереди сообщений используют как связующее звено между различными внутренними подсистемами. Несколько классических примеров: отложенная обработка пользовательских данных; передача статистики; сглаживание нагрузки на относительно медленные системы; выполнение периодических задач. Существует несколько подходов к организации очередей: использовать реляционные базы данных; применить существующие решения (RabbitMQ и т.п.); написать свой велосипед. «Мой Мир» какое-то время использовал очереди в реляционной базе, но с ростом проекта начались проблемы с производительностью. Мы встали перед выбором: применить существующие решения или разработать свою систему. Читать дальше →