Мастер-класс по Apache Kafka и RabbitMQ

На весеннем мастер-классе по Laravel у меня попросили провести отдельный урок по RabbitMQ и Apache Kafka. Материал готов, и вскоре мы с вами проведём пару жарких вечеров. Построим пример сайта с сервисами, выполняющими фоновые задачи и общающимися через брокеры:

На этой неделе буду на РИФТЕХ 2018 в Ульяновске, так что этот двух- или трёхдневный мастер-класс проведём с 13 по 17 октября.


Что будет:

  • Придумаем задание
  • Развернём Docker
  • Создадим SPA-фронтенд на VueJS
  • Напишем бэкенд с JSON API
  • Прикрутим WebSocket-уведомления
  • Попробуем поработать синхронно
  • Найдём проблемы сильной связанности
  • Перейдём на шины сообщений
  • Найдём проблемы производительности
  • Вынесем тяжёлые задачи в микросервисы
  • Оформим сложные процессы в саги
  • Поговорим о прекрасном...

Это маленький мастер-класс про шины, а не про обширный мир микросервисов, поэтому не будет:

  • Построения супер-систем балансирования
  • Подключения систем обнаружения хостов
  • И всяких супер-штук из сурового мегахайлоада...

В общем, приходите к нам:


Приобрести записи


Если не получается по https, то замените адрес на http.

Вы получите доступ к личному кабинету со ссылками на онлайн-трансляцию. И туда же навечно будут выложены ссылки на записи. Так что онлайн присутствовать необязательно. Можно вписаться сейчас, а посмотреть когда будет удобно.


Действует гарантия возврата средств. Если передумаете до начала или что-то не понравится в первый день, то напишите мне и я верну ваш платёж.


Если желаете оплатить участие от юрлица, то пишите мне. Если есть другие вопросы, то пишите туда или здесь в комментариях. До встречи с участниками на мастер-классе!


Комментарии

 

Егор

Отличная новость, Дмитрий!

А будет ли традиционная скидка для участников прошлых мастер-классов?

Ответить

 

Дмитрий Елисеев

Выложил всем уже со скидкой. Я сегодня добрый :)

Ответить

 

Алексей Тимков

Дима, а для постоянных участников всех прошлых вебинаров скидка такая же?:)))

Ответить

 

Александр Макаров – rmcreative.ru

Проблемы и решения на темы:

1. N консюмеров, K продьюсеров.
2. Повторы.
3. Гарантия доставки.
4. Пропадание сети.
5. Поддержание работоспособности демона-воркера.

И вот всё это будет рассмотрено?

Ответить

 

Антон

Хорошие вопросы Александр поднял, впрочем как и всегда. Будет интересно услышать на них ответы на мастер-классе от Дмитрия.

Ответить

 

Обама

Не понимаю о чем вопросы, но я уже тоже хочу знать на них ответы

Ответить

 

Дмитрий Елисеев

1. Если очередь переполняется, то увеличиваем число консьюмеров.
2. Повторы возможны при ручной перепубликации перед ack.
3. Рассмотрим, что выбираем либо скорость, либо гарантии.
4. Критичнее пропадание сети у паблишера.
5. Это решаем systemd или supervisord.

Ответить

 

Александр Макаров – rmcreative.ru

1. Не, я тут больше про тот случай, когда у нас один сервис отдаёт свой exchange для потребления N другими сервисами. То есть про организацию на основе Rabbit шины событий.
2. Это понятно. Но бесконечный повтор в худшем случае валит сервер. В лучшем просто затыкает очередь. Есть несколько общепринятых стратегий в таких случаях, про них неплохо рассказать.
4. Смотря какой тип exchange.
5. Как минимум у supervisord есть особенности с экспоненциальным временем ожидания до следующей попытки.

Ответить

 

Max

Добавьте, плз, развертывание на Vagrant.

Ответить

 

Егор

Уже было в других курсах. Тема микросервисов и так очень обширная и лучше на вагрант время не тратить.

Ответить

 

Max

Я к тому, чтобы курс строился таким образом, чтоб можно было использовать Vagrant, а не только Docker

Ответить

 

Егор

Курс будет на 2 вечера, давайте более рационально распределять время, всем не угодишь.

Ответить

 

const

А будет ли запись, чтобы позже приобрести мастер класс?
Я тут новенький поэтому пока не вкурсе как этот процесс у вас происходит.

Ответить

 

Дмитрий Елисеев

Позже можно, но немного дороже.

Ответить

 

const

Тоже хороший вариант. Спасибо.

Ответить

 

roman

почему SPA-фронтенд на VueJS? а не на Reactjs? а вообще у Вас есть что-либо по Reactjs?

Ответить

 

Андрей

Дядя, здесь проводят вечера в дискуссиях по бэкенду. Тебе на даваскрипт ру надо.

Ответить

 

Ильдар Достоевский – sopost.ru

Хотелось бы поучаствовать, но интересует очень такой момент: в каком формате будет проходить мастер-класс? В какое время, сколько по времени? Будет ли мастер-класс позже выложен в сеть в свободном доступе? Спасибо.

Ответить

 

Дмитрий Елисеев

Вечерами с 19:00 по МСК по 4..5 часов. После урока в кабинет выкладывается запись. Бесплатно выложено не будет.

Ответить

 

Сергей

А на чем бекэнд писать будете?

Ответить

 

Дмитрий Елисеев

API на PHP.

Ответить

 

Max

Дмитрий, что должно быть установлено в системе, при прохождении мастер класса (php, npm и т. д.)?

Ответить

 

Дмитрий Елисеев

Только Docker с Docker Compose.

Ответить

 

Andrew

В платёжной системе уже несколько дней проблемы с SSL - оплатить не получается.

Ответить

 

Дмитрий Елисеев

Попробуйте адрес с http.

Ответить

 

Дмитрий Полищук

А api будим писать как, на фреймворке или на чистом php? Если на фреймворке то на каком?

Ответить

 

Дмитрий Елисеев

На микрофреймворке.

Ответить

 

Алексей Тимков

Дима привет, еще не известно с датами проведения?

Ответить

 

Дмитрий

"так что этот двух- или трёхдневный мастер-класс проведём ориентировочно 13 и 14-го октября."

Ответить

 

Алексей Тимков

Здорово. Ждем с нетерпением выходных тогда)))

Ответить

 

Павел Змеищев

Дмитрий, а когда будет известна точная информация о времени проведении мастер-класса? А то надо на выходных спланировать несколько дел, а без точной информации будет или нет он на этих выходных и в какое время это сложно)

Ответить

 

Дмитрий Елисеев

13-го и 15-го в 19:00 по московскому времени.

Ответить

 

roman

Сначала никакого текста о платности, а потом оказывается что это платно. Цена не огромная конечно, но сам факт, когда не ожидаешь и не готов. И Александр Макаров здесь как независимый ставящий задачи что будет полезно узнать посетителям или для поднятия веса проекта? (Конечно знающие понимают, что веса у него хватит не на один проект и не только как автора).

Ответить

 

Борис – zabolotskikh.com

Вообще не понимаю сути претензий к Дмитрию. Человек старается, делает один из самых качественных и подробных контентов на тему веб-программирования, проводит мастер-класс, отвечает на вопросы, так почему же он не имеет права брать за это деньги? К тому же если бы это всё бесплатно раздавалось, люди бы не так ценили полученные знания.

Ответить

 

roman

Претензия не в платности. Конечно работа должна быть оплачена. И в качестве работы автора нет сомнений. И цена адекватная для такой темы. В неожиданности вопрос, поскольку сначала все выглядело как бесплатно. И я не оставил деньги на карте чтобы оплатить. Пришел домой из магазина, где слизал все не предполагая надобности безнальной ближайшей оплаты и ожидая зарплату через несколько дней, захожу и тут узнаю что пролетел. Нал через интернет не проходит.

Ответить

 

Дмитрий Елисеев

> В неожиданности вопрос...

Этот пост с кнопкой и ценой уже три недели висит.

Ответить

 

roman

Где слово цена? даже поиском не нашел.

Ответить

 

dima – elisdn.ru

Чувак отдохни

Ответить

 

Николай Дыбнов

Курс сегодня завершается ?

Ответить

 

Алексей Тимков

Дим, сори немного не по теме, хотел уточнить как вы относитесь к анализаторам кода в php, таким как sonarqube и т.п.

Ответить

 

Дмитрий Елисеев

Постоянно пользуюсь инспектором в PhpStorm и контролирую формат кода библиотекой PHP CodeSniffer.

Ответить

 

Алексей Тимков

Понял, спасибо, тоже посмотрю.

Ответить

 

xfg

Есть популярное мнение, что брокеры не должны быть персистентными. Всё равно невозможно атомарно записать данные в базу и сообщение в брокер. Соответственно и то и другое нужно атомарно писать в базу и сообщение должно лежать в базе до тех пор пока от консьюмера не дойдет подтверждение об успешной обработке сообщения. Соответственно можно взять какой-нибудь брокер очередей на redis и будет достаточно. Доверять брокеру хранить сообщения потеря которых ведет к неконсистентности данных в проекте - опрометчиво.

Ответить

 

Игорь

Дмитрий здравствуйте ! А когда symfony будет. Вроде ноябрь.

Ответить

Оставить комментарий

Войти | Завести аккаунт | Войти через


(никто не увидит)





Можно использовать теги <p> <ul> <li> <b> <i> <a> <pre>