Начиная разбираться в SQL многие сталкиваются с проблемой сложности понимания различия между разными JOIN-ами в этом языке.
В этом видео уроке я объясняю: 1) Что такое JOIN. 2) Различие между CROSS JOIN, INNER JOIN, LEFT JOIN, RIGHT JOIN, и FULL JOIN. Также показываю как реализовать FULL JOIN в базах данных, которые не предоставляют такую конструкцию.
Django остаётся самым популярным Python веб-фреймворком в мире, однако архитектура большинства проектов на нём, мягко говоря, оставляет желать лучшего. В этом мастер-классе мы на живом примере поговорим о структуре Django проекта, бизнес-логике в Django, а также о хороших практиках проектирования кода.
0:00 О чём пойдёт речь, постановка задачи
2:17 Создание проекта
3:50 Создание моделей
7:39 Создание первоначальных Django Views
25:21 Анализ полученного начального кода
26:07 Рефакторинг
40:40 Вынос бизнес-логики в отдельный слой
54:09 Анализ полученного кода, финальный рефакторинг
Создание бизнес-сервисов
/****************** about ******************/
Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:
— Диджитализируй digitalize.team, разрабатываем сложные IT системы для бизнеса;
— Salesbeat salesbeat.pro, комплексный модуль доставки для интернет магазинов.
Если у вас есть проект на разработку, пишите нам на hi@digitalize.team.
С другими предложениями, а также если вам нужна одна или несколько индивидуальных консультаций/уроков по разработке (3000 руб/час), пишите мне на alexey@salesbeat.pro.
Мы разрабатываем платформу IPTV/OTT-телевидения. У платформы около 10 миллионов пользователей.
Требования к backend платформы: в условиях высокой нагрузки обеспечить API «тонкого» клиента — платформа должна отдавать срезы данных, отфильтрованные и отсортированные для отображения на каждом экране/странице с учетом очень непростой бизнес-логики.
…
— Нашли ошибку в видео? Пишите нам на support@ontico.ru
Архитектурный шаблон проектирования конвейер (pipeline) хорошо зарекомендовал себя при проектировании высоконагруженных (highload) систем. Использование шины сообщений (message bus) при реализации каналов взаимодействия позволяет достигать хороших показателей масштабируемости (scalability), но при этом появляются дополнительные накладные расходы, которые сказываются на показателях производительности (performance).
…
Раньше HeadHunter был большим монолитным приложением. Несколько лет назад мы приняли решение выделять из него микросервисы. За несколько лет мы поняли, что микросервисы — это не серебряная пуля и при неправильном «распиле» создают существенные проблемы: сложность разработки, деплоя, эксплуатации и др. Иногда эти проблемы сводят на нет преимущества от использования микросервисов.
В докладе хочу взвесить преимущества и недостатки микросервисов при вертикальном и горизонтальном делении на микросервисы.
Нам, компании Флант, множество раз задавали вопрос: «Можно ли базу в Kubernetes?».
В этом докладе я поделюсь нашим опытом и на конкретных примерах расскажу, в каких случаях имеет смысл размещать базы данных (и в целом stateful-приложения) в Kubernetes, а в каких это неоправданно или даже вредно и опасно.
— Нашли ошибку в видео? Пишите нам на support@ontico.ru
Наша специализация — запуск и обслуживание высоконагруженных сервисов. За все время у нас не было ни одного проекта, в котором бы при запуске или эксплуатации сервиса не проявились нагрузочные проблемы, заложенные программистами или архитекторами. Цель доклада — структурировать типовые проблемы нагруженных проектов и дать практические советы по их урегулированию.
…