Pull to refresh
-1
0
Напольских Артём @napolskih

Разработкик, архитектор, техлид бекенд систем

Send message

«Введение в Elixir» — первая книга по Эликсиру на русском

Reading time7 min
Views14K
Введение в Elixir Это произошло внезапно, но принесло море радости. Наконец-то книжное издательство обратило внимание на заинтересованность разработчиков Эликсиром и выпустило первую книгу по этому языку на русском. Выбор издания для перевода ожидаем — это материал для людей, которые хотят познакомиться с языком либо уже начали знакомство и готовы узнать о возможностях больше.

Эликсир — динамический, функциональный язык программирования, спроектированный для создания масштабируемых и легко поддерживаемых приложений. Основан на Erlang VM, эффективной для распределённых, отказоустойчивых систем с низкой задержкой, в то же время с успехом применяемой в веб-разработке и сфере встроенного ПО.

Подробности и промокод внутри
Total votes 20: ↑20 and ↓0+20
Comments14

Создание движка для блога с помощью Phoenix и Elixir / Часть 9. Каналы

Reading time16 min
Views4.6K


От переводчика: «Elixir и Phoenix — прекрасный пример того, куда движется современная веб-разработка. Уже сейчас эти инструменты предоставляют качественный доступ к технологиям реального времени для веб-приложений. Сайты с повышенной интерактивностью, многопользовательские браузерные игры, микросервисы — те направления, в которых данные технологии сослужат хорошую службу. Далее представлен перевод серии из 11 статей, подробно описывающих аспекты разработки на фреймворке Феникс казалось бы такой тривиальной вещи, как блоговый движок. Но не спешите кукситься, будет действительно интересно, особенно если статьи побудят вас обратить внимание на Эликсир либо стать его последователями.

В этой части мы воспользуемся каналами из Phoenix для того, чтобы оживить комментарии.

Читать дальше →
Total votes 9: ↑7 and ↓2+5
Comments0

Как мы переехали с Oracle на PostgreSQL в нагруженном сервисе без даунтайма

Level of difficultyMedium
Reading time30 min
Views21K

Всем привет! Я Сергей, работаю в B2B-команде Яндекс Маркета последние 3,5 года. Как уже понятно из заголовка, сейчас я вам расскажу про yet-another-миграцию с базы на базу, которая началась в середине 2021 года и заняла почти год. Получается, мемуары.

Вас ждёт рассказ о том, как мы:

- несколько месяцев чинили тесты и делали трансформер;

- десятки раз переливали данные;

- чинили баги незаметно для пользователей;

- заставили сервис работать на PostgreSQL быстрее, чем он работал на Oracle.

Читать далее
Total votes 87: ↑88.5 and ↓-1.5+90
Comments15

Интерактивные и документированные диаграммы для сложных систем

Level of difficultyMedium
Reading time13 min
Views4.5K

Мой первый on-call выдался нелегким. Недели тренингов и обучения не подготовили меня к тому что придется бегать по Slack каналам различных команд и искать того, кто может что либо знать о какой-то из частей системы. Оказалось что многие страницы в корпоративной Wiki уже не обновлялись несколько лет. Команды хранили свою документацию кто где хотел: кто в Wiki, кто в Google Docs, кто в GitHub и т.д. Наш on-call был не идеален: 2 человека выходили на дежурство 24/7. Один был ответственен за всю инфраструктуру (MySql, Cassandra, Kafka, ElasticSearch, Nomad и т.д.), второй же был Developer on-call и отвечал за все микросервисы и различные легаси системы, что в сумме давало около 300 различных сервисов от 7 команд на самых различных стеках и фреймворках (Java, Scala, Node, Go). Но что меня больше всего раздражало - так это невозможность быстро оценить на высшем уровне как проходит и обрабатывается запрос от пользователя. Диаграммы для разных бизнес частей точно также были либо устаревшими, либо без прилегающей документации, либо для какой-то бизнес логики не было ничего. И вот тогда мне пришла идея, что было бы неплохо иметь диаграммы, в которых можно не только нажать на любой элемент и добыть о нем более детальную информацию, но также получить ссылки на другие диаграммы и динамически их подгружать. Мне хотелось иметь возможность быстро разобраться в неизвестной распределенной системе, не переключаясь между диаграммой и документацией в Google Docs или Wiki. Именно так я начал работать над проектом Schem.io.

Предупреждение: в статье содержится большое количество GIF-изображений.

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

Docker для новичков — #1 Что такое контейнер, image, DockerHub?

Level of difficultyEasy
Reading time7 min
Views14K

В этой статье я расскажу о том, что такое Docker, Docker Desktop и как этим пользоваться! Два способа создания image, значения вкладок Docker Desktop

Читать далее
Total votes 24: ↑19.5 and ↓4.5+15
Comments2

Лучшие практики для надёжной работы с RabbitMQ

Level of difficultyEasy
Reading time13 min
Views19K

Привет, Хабр! Я Женя, архитектор интеграционной платформы в Точке, отвечаю за асинхронный обмен сообщениями между внутренними сервисами, за ESB и за брокеры сообщений.

В этой статье я постарался кратко и последовательно изложить основные моменты, о которых полезно помнить при использовании RabbitMQ, если важны стабильность обмена и сохранность данных.

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

Следуй за белым кроликом
Total votes 58: ↑58.5 and ↓-0.5+59
Comments16

5 механических клавиатур, на которые стоит обратить внимание в 2024 году

Reading time4 min
Views26K

Клавиатуры — основной рабочий инструмент для большинства читателей Хабра. Чем лучше клавиатура, тем эффективнее можно выполнять работу — будь то кодинг или текст. И не отвлекаться на проблемы с аксессуарами. Каждый месяц производители из разных стран выпускают хорошие новые модели — пришло время оценить несколько интересных новинок. Все самое интересное — под катом!
Читать дальше →
Total votes 44: ↑38.5 and ↓5.5+33
Comments84

Мифы и реалии «Мультимастера» в архитектуре СУБД PostgreSQL. Часть. 3

Reading time8 min
Views3.3K

Привет, Хабр! Это снова мы — Павел Конотопов и Михаил Жилин, сотрудники компании Postgres Professional. Напомню, что Павел занимается архитектурой построения отказоустойчивых кластеров, а я анализом производительности СУБД. У каждого из нас за плечами более десяти лет опыта в своей области.

Во второй части статьи «Мифы и реалии «Мультимастера» в архитектуре СУБД PostgreSQL» мы говорили о гарантии согласованности данных и разрешение конфликтов. Разобрали как выявлять и разрешать конфликты, используя разные способы. Теперь пришла пора одной из самых важных характеристик хранения данных — надёжности.

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

Мифы и реалии «Мультимастера» в архитектуре СУБД PostgreSQL. Часть. 2

Reading time11 min
Views3.9K

Привет, Хабр! Это снова мы — Павел Конотопов и Михаил Жилин, сотрудники компании Postgres Professional. Напомню, что Павел занимается архитектурой построения отказоустойчивых кластеров, а я анализом производительности СУБД. У каждого из нас за плечами более десяти лет опыта в своей области.

В первой части статьи «Мифы и реалии «Мультимастера» в архитектуре СУБД PostgreSQL» мы посмотрели как развивалась технология «Мультимастер» в экосистеме PostgreSQL. Обсудили существует ли «Честный Мультимастер», какие у него реализации и как его следует применять. Теперь поговорим о надёжности хранения данных.

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

Мифы и реалии «Мультимастера» в архитектуре СУБД PostgreSQL. Часть. 1

Reading time12 min
Views9.8K

Привет, Хабр! Недавно мы делали доклад на конференции HighLoad 2023 — «Мифы и реалии Мультимастера в архитектуре СУБД PostgreSQL». Мы — это Павел Конотопов (@kakoka) и Михаил Жилин (@mizhka), сотрудники компании Postgres Professional. Павел занимается архитектурой построения отказоустойчивых кластеров, а Михаил — анализом производительности СУБД. У каждого за плечами более десяти лет опыта в своей области.

Порассуждаем о том, как развивалась технология «Мультимастер» в экосистеме PostgreSQL, остановимся на том, что она из себя представляет, на каких внутренних механизмах PostgreSQL основана и как её можно использовать.

Мы также поговорим о том, существует ли «Честный Мультимастер» (само понятие «Честный Мультимастер» достаточно специфично и в основном употребляется в кругу разработчиков), какие реализации у него есть и как его следует применять.

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

Обзор языка Crystal

Level of difficultyEasy
Reading time7 min
Views3.6K

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

История Crystal начинается в 2011 году, когда команда энтузистов решили создать язык, который бы исправил некоторые из тех ограничений и проблем, с которыми они сталкивались, работая с Ruby. Они мечтали о языке, который бы позволял писать код, легкий для понимания и поддержки, но при этом обладающий высокой производительностью и эффективностью выполнения. Так родился Crystal, язык, который наследует синтаксис Ruby.

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

Читать далее
Total votes 17: ↑14 and ↓3+11
Comments2

Книга «Terraform: инфраструктура на уровне кода. 3-е межд. изд.»

Reading time26 min
Views7K
image Привет, Хаброжители!

Terraform — настоящая звезда в мире DevOps. Эта технология позволяет управлять облачной инфраструктурой как кодом (IaC) на облачных платформах и платформах виртуализации, включая AWS, Google Cloud, Azure и др. Третье издание было полностью переработано и дополнено, чтобы вы могли быстро начать работу с Terraform.

Евгений (Джим) Брикман знакомит вас с примерами кода на простом декларативном языке программирования Terraform, иллюстрирующими возможность развертывания инфраструктуры и управления ею с помощью команд. Умудренные опытом системные администраторы, инженеры DevOps и начинающие разработчики быстро перейдут от основ Terraform к использованию полного стека, способного поддерживать трафик огромного объема и большую команду разработчиков.
Читать дальше →
Total votes 11: ↑10 and ↓1+9
Comments3

ESG и Устойчивое развитие — право гуманитариев на контроль человечества

Level of difficultyEasy
Reading time8 min
Views1.9K

Я давно слежу за климатической повесткой, за этим, по сути, социально-инженерным экспериментом финансово-глобалистских структур. Мне, в первую очередь, интересен не сам климат, а методы манипуляции, сопровождающие эту повестку. Первый пробный ход в этом направлении был сделан в конце 80-х гг. прошлого века с раскруткой в западной прессе (США) истерии вокруг образования «озоновых дыр», тогда, при деятельном участии корпорации «Дюпон», был произведён массовый переход на новое поколение фреонов, и эта компания стала, фактически, монополистом данного вида продукции (В.Катасонов «Экологические фейки»). Поскольку эксперимент с климакологией (климат+экология) оказался успешным, то его стали использовать повторно, но уже не в экономических, а политических целях.

Я надеялся, что с началом СВО наша страна, наконец, сможет отмежеваться от этого либерального анти-научного мракобесия и заняться, наконец, делом — созданием и развитием промышленной отрасли России, чего мы и делаем (1, 2, 3), но навязываемые рамки по снижению производственно-деловой активности в нашей стране никуда не делись и устойчиво актуализируются, хотя, даже уже европейцы сказали, что они «поставили на паузу зелёный переход».

Однако, у нас в Госдуме продолжает функционировать «Экспертный совет по устойчивому развитию и зеленому финансированию при Подкомитете по устойчивому развитию и зеленому финансированию» при председательстве депутата Владимира Сенина, крайнее заседание которого состоялось в середине декабря 2023 года. В 2024 году совет планирует выпустить коллективную монографию по вопросам правового регулирования ESG-банкинга и его роли в трансформации российской экономики.

Читать далее
Total votes 21: ↑12 and ↓9+3
Comments27

Почему PASETO лучше для аутентификации, чем JWT

Reading time8 min
Views11K

В веб-разработке одним из наиболее популярных решений является аутентификация на основе токенов. Чаще всего для создания системы аутентификации используют JWT (порой даже там, где это не нужно). Но несмотря на популярность, JWT имеет ряд недостатков. Поэтому появляются новые решения для аутентификации на основе токенов. В этой статье мы рассмотрим PASETO — токен, который был разработан для замены JWT.

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

Как установить Windows 11

Level of difficultyEasy
Reading time10 min
Views74K

Да, статья о том, как установить Windows 11 правильно. Этот процесс нынче сопровождается таким количеством шаманских плясок, что ей-богу, проще Arch устанавливать. Решил вот поместить все познания по этому вопросу из головы в статью.

Читать далее
Total votes 143: ↑121 and ↓22+99
Comments238
1
23 ...

Information

Rating
Does not participate
Location
Россия
Registered
Activity

Specialization

Backend Developer, Software Architect
Lead
From 500,000 ₽
High-loaded systems
Ruby
Designing application architecture
PostgreSQL
Database
Redis
Elasticsearch
Ruby on Rails
SQL
REST