Мастер-класс по Apache Kafka и RabbitMQ
На весеннем мастер-классе по Laravel у меня попросили провести отдельный урок по RabbitMQ и Apache Kafka. Материал готов, и вскоре мы с вами проведём пару жарких вечеров. Построим пример сайта с сервисами, выполняющими фоновые задачи и общающимися через брокеры:
На этой неделе буду на РИФТЕХ 2018 в Ульяновске, так что этот двух- или трёхдневный мастер-класс проведём с 13 по 17 октября.
Что будет:
- Придумаем задание
- Развернём Docker
- Создадим SPA-фронтенд на VueJS
- Напишем бэкенд с JSON API
- Прикрутим WebSocket-уведомления
- Попробуем поработать синхронно
- Найдём проблемы сильной связанности
- Перейдём на шины сообщений
- Найдём проблемы производительности
- Вынесем тяжёлые задачи в микросервисы
- Оформим сложные процессы в саги
- Поговорим о прекрасном...
Это маленький мастер-класс про шины, а не про обширный мир микросервисов, поэтому не будет:
- Построения супер-систем балансирования
- Подключения систем обнаружения хостов
- И всяких супер-штук из сурового мегахайлоада...
В общем, приходите к нам:
Если не получается по https, то замените адрес на http.
Вы получите доступ к личному кабинету со ссылками на онлайн-трансляцию. И туда же навечно будут выложены ссылки на записи. Так что онлайн присутствовать необязательно. Можно вписаться сейчас, а посмотреть когда будет удобно.
Действует гарантия возврата средств. Если передумаете до начала или что-то не понравится в первый день, то напишите мне и я верну ваш платёж.
Если желаете оплатить участие от юрлица, то пишите мне. Если есть другие вопросы, то пишите туда или здесь в комментариях. До встречи с участниками на мастер-классе!
Отличная новость, Дмитрий!
А будет ли традиционная скидка для участников прошлых мастер-классов?
Выложил всем уже со скидкой. Я сегодня добрый :)
Дима, а для постоянных участников всех прошлых вебинаров скидка такая же?:)))
Проблемы и решения на темы:
1. N консюмеров, K продьюсеров.
2. Повторы.
3. Гарантия доставки.
4. Пропадание сети.
5. Поддержание работоспособности демона-воркера.
И вот всё это будет рассмотрено?
Хорошие вопросы Александр поднял, впрочем как и всегда. Будет интересно услышать на них ответы на мастер-классе от Дмитрия.
Не понимаю о чем вопросы, но я уже тоже хочу знать на них ответы
1. Если очередь переполняется, то увеличиваем число консьюмеров.
2. Повторы возможны при ручной перепубликации перед ack.
3. Рассмотрим, что выбираем либо скорость, либо гарантии.
4. Критичнее пропадание сети у паблишера.
5. Это решаем systemd или supervisord.
1. Не, я тут больше про тот случай, когда у нас один сервис отдаёт свой exchange для потребления N другими сервисами. То есть про организацию на основе Rabbit шины событий.
2. Это понятно. Но бесконечный повтор в худшем случае валит сервер. В лучшем просто затыкает очередь. Есть несколько общепринятых стратегий в таких случаях, про них неплохо рассказать.
4. Смотря какой тип exchange.
5. Как минимум у supervisord есть особенности с экспоненциальным временем ожидания до следующей попытки.
Добавьте, плз, развертывание на Vagrant.
Уже было в других курсах. Тема микросервисов и так очень обширная и лучше на вагрант время не тратить.
Я к тому, чтобы курс строился таким образом, чтоб можно было использовать Vagrant, а не только Docker
Курс будет на 2 вечера, давайте более рационально распределять время, всем не угодишь.
А будет ли запись, чтобы позже приобрести мастер класс?
Я тут новенький поэтому пока не вкурсе как этот процесс у вас происходит.
Позже можно, но немного дороже.
Тоже хороший вариант. Спасибо.
почему SPA-фронтенд на VueJS? а не на Reactjs? а вообще у Вас есть что-либо по Reactjs?
Дядя, здесь проводят вечера в дискуссиях по бэкенду. Тебе на даваскрипт ру надо.
Хотелось бы поучаствовать, но интересует очень такой момент: в каком формате будет проходить мастер-класс? В какое время, сколько по времени? Будет ли мастер-класс позже выложен в сеть в свободном доступе? Спасибо.
Вечерами с 19:00 по МСК по 4..5 часов. После урока в кабинет выкладывается запись. Бесплатно выложено не будет.
А на чем бекэнд писать будете?
API на PHP.
Дмитрий, что должно быть установлено в системе, при прохождении мастер класса (php, npm и т. д.)?
Только Docker с Docker Compose.
В платёжной системе уже несколько дней проблемы с SSL - оплатить не получается.
Попробуйте адрес с http.
А api будим писать как, на фреймворке или на чистом php? Если на фреймворке то на каком?
На микрофреймворке.
Дима привет, еще не известно с датами проведения?
"так что этот двух- или трёхдневный мастер-класс проведём ориентировочно 13 и 14-го октября."
Здорово. Ждем с нетерпением выходных тогда)))
Дмитрий, а когда будет известна точная информация о времени проведении мастер-класса? А то надо на выходных спланировать несколько дел, а без точной информации будет или нет он на этих выходных и в какое время это сложно)
13-го и 15-го в 19:00 по московскому времени.
Сначала никакого текста о платности, а потом оказывается что это платно. Цена не огромная конечно, но сам факт, когда не ожидаешь и не готов. И Александр Макаров здесь как независимый ставящий задачи что будет полезно узнать посетителям или для поднятия веса проекта? (Конечно знающие понимают, что веса у него хватит не на один проект и не только как автора).
Вообще не понимаю сути претензий к Дмитрию. Человек старается, делает один из самых качественных и подробных контентов на тему веб-программирования, проводит мастер-класс, отвечает на вопросы, так почему же он не имеет права брать за это деньги? К тому же если бы это всё бесплатно раздавалось, люди бы не так ценили полученные знания.
Претензия не в платности. Конечно работа должна быть оплачена. И в качестве работы автора нет сомнений. И цена адекватная для такой темы. В неожиданности вопрос, поскольку сначала все выглядело как бесплатно. И я не оставил деньги на карте чтобы оплатить. Пришел домой из магазина, где слизал все не предполагая надобности безнальной ближайшей оплаты и ожидая зарплату через несколько дней, захожу и тут узнаю что пролетел. Нал через интернет не проходит.
> В неожиданности вопрос...
Этот пост с кнопкой и ценой уже три недели висит.
Где слово цена? даже поиском не нашел.
Чувак отдохни
Курс сегодня завершается ?
Дим, сори немного не по теме, хотел уточнить как вы относитесь к анализаторам кода в php, таким как sonarqube и т.п.
Постоянно пользуюсь инспектором в PhpStorm и контролирую формат кода библиотекой PHP CodeSniffer.
Понял, спасибо, тоже посмотрю.
Есть популярное мнение, что брокеры не должны быть персистентными. Всё равно невозможно атомарно записать данные в базу и сообщение в брокер. Соответственно и то и другое нужно атомарно писать в базу и сообщение должно лежать в базе до тех пор пока от консьюмера не дойдет подтверждение об успешной обработке сообщения. Соответственно можно взять какой-нибудь брокер очередей на redis и будет достаточно. Доверять брокеру хранить сообщения потеря которых ведет к неконсистентности данных в проекте - опрометчиво.
Дмитрий здравствуйте ! А когда symfony будет. Вроде ноябрь.