Pull to refresh
54
361

Пишу обзоры на библиотеки и инструменты

Send message

Django-аутентификация: просто о сложном

Level of difficultyEasy
Reading time13 min
Views400

Привет, Хабр!

Аутентификация является фундаментальной частью любого веб-приложения. Мы рассмотрим различные способы реализации аутентификации в Django, начиная от стандартных методов и заканчивая более крутыми техниками, например как 2FA и OAuth2.

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments0

Реализация горизонтального кеширования в PHP с Redis Cluster

Level of difficultyEasy
Reading time4 min
Views771

Привет, Хабр!

Сегодня мы рассмотрим одну из задач высоконагруженных приложений — горизонтального кеширования. Когда система начинает испытывать давление под наплывом пользователей, стандартный кеш не всегда справляется. В таких ситуациях на помощь приходит Redis Cluster. Рассмотрим, как масштабировать кеширование в PHP с помощью Redis Cluster, чтобы распределить нагрузку, повысить отказоустойчивость и не потерять в производительности.

Читать далее
Total votes 6: ↑2 and ↓4-1
Comments2

Ctrl+S для Kubernetes: Volume Snapshots

Level of difficultyEasy
Reading time4 min
Views669

Привет, Хабр!

Сегодня поговорим о Volume Snapshots — штуке, которая позволяет создать мгновенный «снимок» данных в Kubernetes, практически как Ctrl+S, только для объёмов дисков.

Volume Snapshot — это снимок данных на уровне диска, позволяющий сохранить текущее состояние PersistentVolume или его клон. В основном это полезно для бэкапов и восстановления, а также для таких задач, как миграция данных или клонирование систем.

Читать далее
Total votes 5: ↑3 and ↓2+3
Comments2

Строим микрокernel на Golang

Reading time6 min
Views2.1K

Привет, Хабр! Сегодня рассмотрим, как построить гибкую и масштабируемую систему с использованием микрокernel архитектуры на Golang.

Перед тем как взяться за код, разберёмся, о чём вообще идёт речь. Микрокernel — это архитектурный стиль, при котором минимальное ядро системы отвечает за основные функции: управление процессами, памятью, коммуникациями и т.д., а всё остальное делегируется в виде отдельных модулей или сервисов.

Почему стоит использовать микрокernel? Простота модификации, высокая степень изоляции компонентов и легкость масштабирования — лишь малая часть преимуществ.

Читать далее
Total votes 6: ↑4 and ↓2+6
Comments8

Tribuo и регрессия: как строить предсказательные модели на Java

Level of difficultyEasy
Reading time7 min
Views803

Привет, Хабр!

В этой статье наш взор упадет на на Tribuo — библиотеку машинного обучения на Java от Oracle.

Tribuo поддерживает различные алгоритмы для классификации, регрессии, кластеризации и многого другого. Но сегодня мы сосредоточимся на регрессии — фундаментальной задаче, которая позволяет предсказывать непрерывные значения. Одним из главных плюсов Tribuo является её удобный API, который позволяет быстро строить модели и оценивать их эффективность.

Читать далее
Total votes 4: ↑2 and ↓2+3
Comments0

Миграция данных в Kubernetes: Всё, что нужно знать новичку

Level of difficultyEasy
Reading time5 min
Views1.5K

Привет, Хабр!

Сегодня у нас на повестке дня тема миграции данных в Kubernetes. Kubernetes — это как швейцарский нож в разработке: умеет всё и сразу. Он не только управляет контейнерами, но и отлично справляется с данными.

Читать далее
Total votes 3: ↑3 and ↓0+6
Comments1

Golang + Redux

Reading time4 min
Views1.1K

Привет, Хабр!

Сегодня мы попробуем реализовать управление состоянием в Go‑приложениях с помощью паттерна Redux. Да‑да, Redux не только для JS.

Redux — это предсказуемый контейнер состояния для приложений. Он помогает управлять состоянием приложения централизованно, делая его более предсказуемым и удобным для отладки. В основном Redux ассоциируется с фронтендом на JavaScript, но принципы, лежащие в его основе, иногда могут подойти и для Go‑приложений.

Читать далее
Total votes 7: ↑4 and ↓3+4
Comments4

Коротко о SLAB, SLOB и SLYB в Linux

Reading time4 min
Views2.5K

Привет! Когда речь заходит о динамическом управлении памятью в Linux, мы имеем дело с несколькими разными подходами, каждый из которых имеет свои плюсы и минусы.

В этой статье разберём три аллокатора памяти ядра: SLAB, SLOB, а также SLUB.

Читать далее
Total votes 17: ↑15 and ↓2+19
Comments6

Управление зависимостями с Autofac в C#

Level of difficultyMedium
Reading time8 min
Views1.1K

Привет, Хабр! Сегодня у нас на повестке дня библиотека Autofac — один из самых популярных инструментов для внедрения зависимостей в C#. Разберемся, как она помогает упорядочить код и сделать проект более управляемым.

Читать далее
Total votes 9: ↑8 and ↓1+12
Comments13

Sidecar на Go: позволь другому заниматься твоими проблемами

Level of difficultyEasy
Reading time4 min
Views1.9K

Привет, Хабр!

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

Сегодня мы рассмотрим реализацию Sidecar на Golang.

Читать далее
Total votes 18: ↑17 and ↓1+21
Comments1

Как и зачем использовать Template Method в C#

Level of difficultyEasy
Reading time7 min
Views5.1K

Template Method (он же «Шаблонный метод») — это паттерн проектирования, который определяет скелет алгоритма в методе, оставляя определенные шаги подклассам. Проще говоря, есть базовый алгоритм, но мы можно менять детали, переопределяя части этого алгоритма в наследниках.

Классический пример — процесс заказа товара в интернет-магазине. Независимо от того, какой у вас магазин, шаги примерно одинаковые: проверка наличия товара, оплата, упаковка и доставка. Но в зависимости от специфики магазина, эти шаги могут отличаться в деталях.

Template Method позволяет создать базовую структуру этих шагов и менять конкретные реализации без изменения самой структуры. В этой статье мы рассмотрим, как реализовать этот паттерн на C#.

Читать далее
Total votes 15: ↑13 and ↓2+16
Comments45

Всё, что вы хотели знать о Django Channels

Reading time10 min
Views1.8K

Приветствую, друзья!

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

В этой статье я расскажу, как работать с Django Channels.

Читать далее
Total votes 14: ↑14 and ↓0+19
Comments0

Настройка CI/CD для AWS Lambda с CodePipeline и SAM CLI

Level of difficultyMedium
Reading time6 min
Views575

Приветствую! Сегодня я расскажу вам, как настроить CI/CD для AWS Lambda с использованием AWS CodePipeline и AWS SAM CLI. Если вы хотите автоматизировать процесс деплоя серверлесс-приложений и избавиться от рутины, то эта статья для вас.

Читать далее
Total votes 8: ↑8 and ↓0+13
Comments0

Кратко про библиотеку mlfinlab: инструмент для финансового ML

Level of difficultyMedium
Reading time4 min
Views2K

Привет, Хабр!

Сегодня мы рассмотрим такую замечательную библиотеку как mlfinlab.

Если вы пытались применить методы машинного обучения к финансовым данным, то наверняка сталкивались с массой подводных камней: от шумных данных до проблем с автокорреляцией. mlfinlab — это библиотека, которая реализует передовые техники из книги Маркоса Лопеса де Прадо "Advances in Financial Machine Learning". Она позволяет не изобретать велосипед, а использовать проверенные временем методы для решения сложных задач финансового ML.

Читать далее
Total votes 11: ↑9 and ↓2+12
Comments4

Как поднять свой WebSocket сервер на Node.js: основы

Level of difficultyEasy
Reading time4 min
Views3.3K

Привет, Хабр!

Сегодня создадим свой WebSocket сервер на Node.js. Это тот самый протокол, который позволяет отправлять и принимать данные в реальном времени без перекладывания на HTTP. Для этого мы будем использовать библиотеку ws.

Читать далее
Total votes 24: ↑15 and ↓9+12
Comments8

База, которую нужно знать про JSON Schema

Level of difficultyEasy
Reading time7 min
Views16K

Привет, Хабр!

Сегодня мы рассмотрим одну из тем, которая, как ни странно, остаётся недооценённой — JSON Schema. Если ты аналитик (или хочешь им быть) и в твоей работе часто мелькают JSON-файлы, то наверняка знаешь, как сложно порой бывает держать всё это под контролем. В этой статье мы разберём всё, что тебе нужно знать про JSON Schema.

Читать далее
Total votes 34: ↑30 and ↓4+36
Comments10

Обзор библиотеки LIBMF для Rust: факторизация матриц

Level of difficultyEasy
Reading time6 min
Views1.1K

Привет, Хабр!

Сегодня поговорим о библиотеке libmf — одном из лучших инструментов для факторизации матриц на Rust. libmf используется для задач машинного обучения: построение рекомендаций, сжатие данных и уменьшение размерности.

Устанавливается она через Cargo легко и просто.

Читать далее
Total votes 14: ↑12 and ↓2+15
Comments0

Регулярные выражения в SQL

Reading time6 min
Views14K

Привет, Хабр!

Представьте, что вам нужно найти иголку в стоге сена, но стог — это ваша БД, а иголка — данные со сложным шаблоном. Деофлтные операторы LIKE и IN тут не помогут — слишком уж они прямолинейны. Но зато здесь отлично зайдут регулярные выражения, которые позволяют выполнять сложные поиски и преобразования строк.

Читать далее
Total votes 27: ↑26 and ↓1+30
Comments11

Коротко про слоты в Vue.js

Level of difficultyEasy
Reading time3 min
Views3.4K

Привет, Хабр!

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

Читать далее
Total votes 10: ↑8 and ↓2+11
Comments7
1
23 ...

Information

Rating
1-st
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity

Specialization

Specialist
Middle
From 1 ₽
SQL
Python
Database
English
PostgreSQL
Git