Добрый день! Хочу поделиться учебником-справочником знаний, которые мне удалось собрать по RabbitMQ
и сжать в короткие рекомендации и выводы.
Рубрика «RabbitMQ» - 2
RabbitMQ. Часть 1. Introduction. Erlang, AMQP
2020-02-17 в 8:46, admin, рубрики: .net, C#, devops, Erlang/OTP, IIoT, Microservices, RabbitMQ, Анализ и проектирование систем, архитектура по, Системы обмена сообщениямиКак мы фрод из избы выносили
2020-02-04 в 7:42, admin, рубрики: elasticsearch, RabbitMQ, Анализ и проектирование систем, Блог компании Ситимобил, проектирование, Системы обмена сообщениямиМеня зовут Никита, я backend-разработчик из команды антифрода в Ситимобил. Сегодня я поделюсь с вами историей о том, как мы выносили наш сервис из монолита в отдельный сервис, как вообще пришли к этому решению и с какими проблемами столкнулись.
Стегоанализ и машинное обучение
2020-02-01 в 4:38, admin, рубрики: catboost, lsb, python, RabbitMQ, информационная безопасность, криптография, машинное обучение, СтеганографияПривет.
Хочу представить вам небольшой проект, который я написал вместо во время сессии.
Суть такова: это классификатор, определяющий наличие стеганографии в изображении. Сразу стоит отметить, что классификатор получился довольно простым: он работает с методом LSB, где заменяется один последний бит 8-битного RGB изображения, и проверялся только на полностью заполненных стегоконтейнерах.
Поиграть с тем, что получилось, можно тут. Примеры картинок (кстати, принимаются только png) есть здесь.
RabbitMQ против Kafka: отказоустойчивость и высокая доступность
2019-11-08 в 7:50, admin, рубрики: big data, devops, isr, ITSumma, RabbitMQ, Rebalanser, zookeeper, алгоритм консенсуса, балансировщик нагрузки, Блог компании ITSumma, брокер сообщений, избыточность, обмен сообщениями, отказоустойчивость, очередь сообщений, перебалансировка, распределенные системы, синхронизированные реплики, Системы обмена сообщениямиВ прошлой статье мы рассмотрели кластеризацию RabbitMQ для обеспечения отказоустойчивости и высокой доступности. Теперь глубоко покопаемся в Apache Kafka.
Здесь единицей репликации является раздел (partition). У каждого топика один или несколько разделов. В каждом разделе есть лидер с фолловерами или без них. При создании топика указывается количество разделов и коэффициент репликации. Обычное значение 3, это означает три реплики: один лидер и два фолловера.
Читать полностью »
RabbitMQ против Kafka: отказоустойчивость и высокая доступность в кластерах
2019-10-30 в 5:06, admin, рубрики: big data, ITSumma, RabbitMQ, Блог компании ITSumma, брокер сообщений, высокая производительность, обмен сообщениями, очередь сообщений, распределенные системы, Системы обмена сообщениямиОтказоустойчивость и высокая доступность — большие темы, так что посвятим RabbitMQ и Kafka отдельные статьи. Данная статья о RabbitMQ, а следующая — о Kafka, в сравнении с RabbitMQ. Статья длинная, так что устраивайтесь поудобнее.
Рассмотрим стратегии отказоустойчивости, согласованности и высокой доступности (HA), а также компромиссы, на которые приходится идти в каждой стратегии. RabbitMQ может работать на кластере узлов — и тогда классифицируется как распределенная система. Когда речь заходит о распределенных системах, мы часто говорим о согласованности и доступности.
Эти понятия описывают, как система ведет себя при сбое. Сбой сетевого соединения, сбой сервера, сбой жесткого диска, временная недоступность сервера из-за сборки мусора, потеря пакетов или замедление сетевого соединения. Все это может привести к потере данных или конфликтам. Оказывается, практически невозможно поднять систему, одновременно и полностью непротиворечивую (без потери данных, без расхождения данных), и доступную (будет принимать операции чтения и записи) для всех вариантов сбоя.
Читать полностью »
Обрабатываем заказы из интернет магазина с помощью RabbitMQ и TypeScript
2019-10-03 в 14:13, admin, рубрики: e-commerce, node.js, RabbitMQ, TypeScript, разработкаВсем привет! Популярность интернет коммерции постоянно растет, как и доля информатизации всех смежных с торговлей видов деятельности. Вместе с этим растет и сложность обработки информации. Каждый заказ, сделанный клиентом интернет магазина, порождает за собой большое количество интеграций с различными сервисами. Такими сервисами могут быть сервисы обработки платежей, доставки, системы учета и лояльности. Каждый заказ должен быть оплачен, учтен, собран и доставлен, а также доступен для последующего анализа. Эту, и так не простую ситуацию, усложняет и тот факт, что пользователь интернет магазина не хочет долго и мучительно чего-то ждать при оформлении заказа. Отклик от интернет магазина должен быть быстрым, ведь каждая миллисекунда задержки увеличивает шанс потери клиента, а в последствии и прибыли. В этой статье я хочу рассказать про брокер сообщений RabbitMQ и как с его помощью можно организовать процесс обработки заказов используя Node.js и TypeScript. Добро пожаловать под кат.
Скучный технологический стек интернет-компании из одного человека
2019-09-17 в 17:20, admin, рубрики: Amazon Web Services, Ansible, celery, DataDog, django, elasticsearch, Listen Notes, nginx, postgresql, python3, RabbitMQ, React, redis, slack, uwsgi, звук, поисковые технологии, Разработка веб-сайтов, Серверное администрирование, скука
Поисковая выдача на ListenNotes.com
Listen Notes — это поисковая система и база данных подкастов. Технология на самом деле очень скучная. Никакого ИИ, глубокого обучения или блокчейна. «Если вы должны объявлять о внедрении ИИ, то вы не используете Настоящий ИИ» :)
После прочтения этой статьи вы сможете повторить мой проект или легко сделать нечто подобное. Не придётся нанимать много разработчиков. Помните, когда Instagram привлёк $57,5 млн и отошёл к Facebook за $1 млрд, у них было всего 13 сотрудников — и это не только разработчики. Покупка Instagram произошла в начале 2012-го. Сейчас 2019 год, и сегодня как никогда просто создать что-то значимое с крошечной инженерной командой — даже из одного человека.
Читать полностью »
Java meetup в Райффайзенбанке
2019-08-05 в 11:35, admin, рубрики: java, kotlin, meetup, RabbitMQ, raiffeisenIT, Блог компании Райффайзенбанк, конференции, РайффайзенбанкJava сообщество Райффайзенбанка, приглашает на открытый митап, который пройдет в московском офисе в Нагатино, 8 августа.
Мы знаем, как важно общаться с людьми из других команд и проектов, иметь возможность спросить совета, обсуждать только что появившиеся технологии и поделиться опытом. Именно поэтому мы открываем двери и приглашаем вас к нам в гости.
Беспростойная миграция RabbitMQ в Kubernetes
2019-05-06 в 10:35, admin, рубрики: devops, kubernetes, RabbitMQ, Блог компании Флант, миграции, системное администрированиеRabbitMQ – написанный на языке Erlang брокер сообщений, позволяющий организовать отказоустойчивый кластер с полной репликацией данных на несколько узлов, где каждый узел может обслуживать запросы на чтение и запись. Имея в production-эксплуатации множество кластеров Kubernetes, мы поддерживаем большое количество инсталляций RabbitMQ и столкнулись с необходимостью миграции данных из одного кластера в другой без простоя.Читать полностью »
Пишем первый микросервис на Node.js с общением через RabbitMQ
2019-04-07 в 12:11, admin, рубрики: node.js, nodejs, RabbitMQ, микросервисы, Программирование, Разработка веб-сайтовСо временем, каждый проект растет и реализовывать новый функционал в существующий монолит становится все сложнее, дольше и дороже для бизнеса.
Один из вариантов решения данной проблемы — использование микросервисной архитектуры. Для новичков или для тех, кто впервые сталкиваются с данной архитектурой, может быть сложно понять, с чего начать, что нужно делать, а что делать не стоит.