All streams
Search
Write a publication
Pull to refresh
18
0.8
Oleg Kunitsyn @olku

Outscaling & Governance

Send message

Millau — ingress-proxy with self-configuration for Docker Swarm

Level of difficultyEasy
Reading time5 min
Views655

Ashamed to admit, I still use Swarm in 2025. It's easy to explain, quick to set up, and simple to use. It's a starting point in the world of containers when full-blown Kubernetes is overkill. But Docker's evolution hasn't been the most straightforward. Over time, it began to lack a minimal dynamic proxy for Swarm - one that you run once, which configures traffic routing to microservices automatically - and forget about it. That's how Millau was born - an ingress-proxy and load balancer based on labels. It currently powers its own website and a few other projects.

Read more

Millau — ingress-прокси с самонастройкой для Docker Swarm

Level of difficultyEasy
Reading time5 min
Views1.4K

Стыдно признаться, я практикую Swarm в 2025 году. Его легко объяснять, быстро готовить и просто использовать. Это инструмент старта в мир контейнеров, когда большой Kubernetes избыточен. Но путь развития Docker оказался не самым прямым. Со временем стало не хватать минимального динамического прокси для Swarm. Такого, который можно запустить один раз, чтобы он сам настраивал маршрутизацию трафика к микросервисам - и забыть. Так появился Millau - ingress-прокси и балансировщик на лейблах. Сейчас он обслуживает собственный сайт и ещё несколько проектов.

Почему не Traefik

Почта для домена в Telegram

Reading time2 min
Views15K

Дважды начинал эту заметку ибо откровений и контента мало. Решая личную проблему переезда входящей почты с Yandex 360, оказалось, что бесплатных парковок "на западе" не имеется. Zoho как альтернатива, определенно, хорош, но 90 центов за домен в месяц для десятка доменов с сотней текстовых входящих показалось избыточным. На коленке был собран wizard, связывающий SendGrid и Telegram вместе.

Читать далее

Enterprise COBOL: пример проекта

Reading time8 min
Views4.1K

Эта статья завершает Курс программирования на COBOL, освещая важные аспекты разработки программного обеспечения, такие как модульность кодовой базы, зависимости, модульное тестирование, мокинг, DevOps на z/OS и автодокументация. Современный подход представлен здесь наилучшим образом - на примере.

Читать далее

Enterprise COBOL: реализация библиотеки

Reading time6 min
Views2.2K

image


Не желаете ли немного COBOL? Вы можете попробовать самостоятельно создать библиотеку на диалекте IBM Enterprise COBOL. Научиться структурировать пакет, управлять его зависимостями, реализовать автоматические тесты на z/OS, разместить в GitHub под контролем Continuous Integration. И, наконец, опубликовать в реестре пакетов.

Читать дальше →

Lossless ElasticSearch data migration

Reading time5 min
Views4.3K


Academic data warehouse design recommends keeping everything in a normalized form, with links between. Then the roll forward of changes in relational math will provide a reliable repository with transaction support. Atomicity, Consistency, Isolation, Durability — that's all. In other words, the storage is explicitly built to safely update the data. But it is not optimal for searching, especially with a broad gesture on the tables and fields. We need indices, a lot of indices! Volumes expand, recording slows down. SQL LIKE can not be indexed, and JOIN GROUP BY sends us to meditate in the query planner.

Read more →

GDPR: Согласие на обработку персональных данных

Reading time44 min
Views8K
Это перевод официального руководства Согласия на обработку персональных данных (Guidelines on Consent under Regulation 2016/679 wp259rev.01) рабочей группы Еврокомиссии. Оригинал опубликован на 23 официальных языках Европейского Союза. Не смотря на то, что русский не входит в их число, он весьма распространен в Европе. Если ваш бизнес обслуживает клиентов из стран ЕС, то вы обязаны соответствовать Общему регламенту защиты персональных данных (General Data Protection Regulation), который вступил в силу 25 мая 2018 года.
Читать дальше →

Миграция данных ElasticSearch без потерь

Reading time5 min
Views13K


Академическое проектирование хранилища данных рекомендует держать все в нормализованной форме, со связями между. Тогда накат изменений по реляционной математике даст надежное хранилище с поддержкой транзакций. Atomicity, Consistency, Isolation, Durability — вот это все. Иначе говоря, хранилище специально строится для безопасного обновления данных. Но оно вовсе не оптимально для поиска, особенно широким жестом по таблицам и полям. Нужны индексы, много индексов. Объемы разрастаются, запись замедляется. SQL LIKE не индексируется, а JOIN GROUP BY отправляет медитировать в планировщик запросов.

Читать дальше →

Выводим MySQL из окружения

Reading time4 min
Views14K
Как только ваша информационная система становится рабочей (prоduction), появляется необходимость иметь как минимум две копии ее базы данных. Первая, резервная, с некоторой частотой создается при помощи штатных утилит и представляет собой согласованный дамп (consistent dump). Цель его создания — восстановление системы после сбоя (disaster recovery).

Мы же рассмотрим создание второй копии, необходимой для продолжения работы над проектом. Статья ориентирована на разработчиков, только вступающих на тернистый путь управления качеством. И бесполезна тем, кто уже знает, что «вторая копия» на самом деле не совсем вторая, и не совсем копия.
Читать дальше →

Храним ID в Cookie

Reading time3 min
Views8.1K
Ваш сайт все более популярен, рекорды посещаемости бьются еженедельно. Вы подключаете кеширование, разбираетесь в нюансах настроек, оптимизируете. Но наступает момент когда одного сервера уже никак не достаточно, а переход на самую классную в мире железяку не находит полного понимания у начальства. Ах да, ID пользователя Вы храните в Сессии PHP в файле, и вроде бы уже морально готовы положить все в базу данных, как рекомендует Интернет… Но что-то Вас останавливает.
Читать дальше →

Information

Rating
1,789-th
Location
Berlin, Германия
Registered
Activity