Привет, Хабр!
Аутентификация является фундаментальной частью любого веб-приложения. Мы рассмотрим различные способы реализации аутентификации в Django, начиная от стандартных методов и заканчивая более крутыми техниками, например как 2FA и OAuth2.
Пишу обзоры на библиотеки и инструменты
Привет, Хабр!
Аутентификация является фундаментальной частью любого веб-приложения. Мы рассмотрим различные способы реализации аутентификации в Django, начиная от стандартных методов и заканчивая более крутыми техниками, например как 2FA и OAuth2.
Привет, Хабр!
Сегодня мы рассмотрим одну из задач высоконагруженных приложений — горизонтального кеширования. Когда система начинает испытывать давление под наплывом пользователей, стандартный кеш не всегда справляется. В таких ситуациях на помощь приходит Redis Cluster. Рассмотрим, как масштабировать кеширование в PHP с помощью Redis Cluster, чтобы распределить нагрузку, повысить отказоустойчивость и не потерять в производительности.
Привет, Хабр!
Сегодня поговорим о Volume Snapshots — штуке, которая позволяет создать мгновенный «снимок» данных в Kubernetes, практически как Ctrl+S, только для объёмов дисков.
Volume Snapshot — это снимок данных на уровне диска, позволяющий сохранить текущее состояние PersistentVolume или его клон. В основном это полезно для бэкапов и восстановления, а также для таких задач, как миграция данных или клонирование систем.
Привет, Хабр! Сегодня рассмотрим, как построить гибкую и масштабируемую систему с использованием микрокernel архитектуры на Golang.
Перед тем как взяться за код, разберёмся, о чём вообще идёт речь. Микрокernel — это архитектурный стиль, при котором минимальное ядро системы отвечает за основные функции: управление процессами, памятью, коммуникациями и т.д., а всё остальное делегируется в виде отдельных модулей или сервисов.
Почему стоит использовать микрокernel? Простота модификации, высокая степень изоляции компонентов и легкость масштабирования — лишь малая часть преимуществ.
Привет, Хабр!
В этой статье наш взор упадет на на Tribuo — библиотеку машинного обучения на Java от Oracle.
Tribuo поддерживает различные алгоритмы для классификации, регрессии, кластеризации и многого другого. Но сегодня мы сосредоточимся на регрессии — фундаментальной задаче, которая позволяет предсказывать непрерывные значения. Одним из главных плюсов Tribuo является её удобный API, который позволяет быстро строить модели и оценивать их эффективность.
Привет, Хабр!
Сегодня у нас на повестке дня тема миграции данных в Kubernetes. Kubernetes — это как швейцарский нож в разработке: умеет всё и сразу. Он не только управляет контейнерами, но и отлично справляется с данными.
Привет, Хабр!
Сегодня мы попробуем реализовать управление состоянием в Go‑приложениях с помощью паттерна Redux. Да‑да, Redux не только для JS.
Redux — это предсказуемый контейнер состояния для приложений. Он помогает управлять состоянием приложения централизованно, делая его более предсказуемым и удобным для отладки. В основном Redux ассоциируется с фронтендом на JavaScript, но принципы, лежащие в его основе, иногда могут подойти и для Go‑приложений.
Привет! Когда речь заходит о динамическом управлении памятью в Linux, мы имеем дело с несколькими разными подходами, каждый из которых имеет свои плюсы и минусы.
В этой статье разберём три аллокатора памяти ядра: SLAB, SLOB, а также SLUB.
Привет, Хабр! Сегодня у нас на повестке дня библиотека Autofac — один из самых популярных инструментов для внедрения зависимостей в C#. Разберемся, как она помогает упорядочить код и сделать проект более управляемым.
Привет, Хабр!
В распределённых системах каждая служба выполняет свою задачу: одна отвечает за логи, другая за обработку запросов, третья за безопасность. Но не всегда удобно нагружать основной сервис дополнительной логикой. Именно здесь хорошо вписывается Sidecar — отдельный контейнер или процесс, который берёт на себя часть инфраструктурных задач, разгружая основное приложение и позволяя сосредоточиться на главной бизнес-логике.
Сегодня мы рассмотрим реализацию Sidecar на Golang.
Template Method (он же «Шаблонный метод») — это паттерн проектирования, который определяет скелет алгоритма в методе, оставляя определенные шаги подклассам. Проще говоря, есть базовый алгоритм, но мы можно менять детали, переопределяя части этого алгоритма в наследниках.
Классический пример — процесс заказа товара в интернет-магазине. Независимо от того, какой у вас магазин, шаги примерно одинаковые: проверка наличия товара, оплата, упаковка и доставка. Но в зависимости от специфики магазина, эти шаги могут отличаться в деталях.
Template Method позволяет создать базовую структуру этих шагов и менять конкретные реализации без изменения самой структуры. В этой статье мы рассмотрим, как реализовать этот паттерн на C#.
Приветствую, друзья!
Когда я впервые начал работать с Django, меня всё устраивало, за исключением одного момента: как сделать так, чтобы приложение могло общаться с пользователем в реальном времени? Веб-сокеты, уведомления, асинхронные запросы — казалось, это точно не про чистый Django. Но затем я наткнулся на Django Channels, и многое изменилось. Channels позволили мне сделать приложение асинхронным, добавить поддержку веб-сокетов и превратить его во что-то гораздо более крутое.
В этой статье я расскажу, как работать с Django Channels.
Приветствую! Сегодня я расскажу вам, как настроить CI/CD для AWS Lambda с использованием AWS CodePipeline и AWS SAM CLI. Если вы хотите автоматизировать процесс деплоя серверлесс-приложений и избавиться от рутины, то эта статья для вас.
Привет, Хабр!
Сегодня мы рассмотрим такую замечательную библиотеку как mlfinlab.
Если вы пытались применить методы машинного обучения к финансовым данным, то наверняка сталкивались с массой подводных камней: от шумных данных до проблем с автокорреляцией. mlfinlab — это библиотека, которая реализует передовые техники из книги Маркоса Лопеса де Прадо "Advances in Financial Machine Learning". Она позволяет не изобретать велосипед, а использовать проверенные временем методы для решения сложных задач финансового ML.
Привет, Хабр!
Сегодня создадим свой WebSocket сервер на Node.js. Это тот самый протокол, который позволяет отправлять и принимать данные в реальном времени без перекладывания на HTTP. Для этого мы будем использовать библиотеку ws.
Привет, Хабр!
Сегодня мы рассмотрим одну из тем, которая, как ни странно, остаётся недооценённой — JSON Schema. Если ты аналитик (или хочешь им быть) и в твоей работе часто мелькают JSON-файлы, то наверняка знаешь, как сложно порой бывает держать всё это под контролем. В этой статье мы разберём всё, что тебе нужно знать про JSON Schema.
Привет, Хабр!
Сегодня поговорим о библиотеке libmf — одном из лучших инструментов для факторизации матриц на Rust. libmf используется для задач машинного обучения: построение рекомендаций, сжатие данных и уменьшение размерности.
Устанавливается она через Cargo легко и просто.
Привет, Хабр!
Представьте, что вам нужно найти иголку в стоге сена, но стог — это ваша БД, а иголка — данные со сложным шаблоном. Деофлтные операторы LIKE
и IN
тут не помогут — слишком уж они прямолинейны. Но зато здесь отлично зайдут регулярные выражения, которые позволяют выполнять сложные поиски и преобразования строк.
Привет, Хабр!
Когда ты разрабатываешь интерфейсы на Vue.js, рано или поздно приходит момент, когда простые пропсы уже не спасают. Допустим, нужно сделать компонент не просто гибким, а настолько гибким, чтобы его можно было адаптировать под любые сценарии. Пропсами ты тут не отделаешься. И вот тут могут помочь слоты.