Обновить
50
2
Павел Агалецкий@ewolf

Пользователь

Отправить сообщение

Шина данных поверх Kafka — когда каждому хочется иметь своё число консьюмеров для топика

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели7.3K

Всем привет! Я Павел Агалецкий, ведущий инженер команды PaaS в Авито — платформы для продуктовых разработчиков. В этой статье я расскажу про построение шины данных поверх Kafka, которая была бы удобна для всех потребителей. Покажу возможные варианты выбора оптимального числа партиций, поделюсь решением, которое мы для этого придумали внутри Авито, и расскажу про результаты его внедрения.

Читать далее

if err != nil: почему мы (не) любим обработку ошибок в Go? Обзор предложений по её улучшению

Уровень сложностиПростой
Время на прочтение27 мин
Охват и читатели20K

Привет, Хабр! Меня зовут Павел Агалецкий, я ведущий инженер в платформе Авито. Эта статья на одну из самых холиварных тем, о которой вы могли слышать или читать множество раз. При обсуждении Go, особенно новичками или представителями других языков программирования, камнем преткновения обычно становится проверка ошибок — if err != nil.

Рассказываю, какие есть особенности и нюансы, сравниваю обработку ошибок в Go и других языках. Говорим о подходах к изменению обработки ошибок и обсуждаем последний proposal от Яна Тейлора. А еще разбираемся, почему все предложения отклонялись.

Читать далее

Учимся работать с Kubernetes через запуск приложения

Время на прочтение8 мин
Охват и читатели6.3K

Вместе с Павлом Агалецким, ведущим разработчиком PaaS в Авито, изучим команды утилиты kubectl в Kubernetes, попробуем запустить два приложения и познакомимся с консольным дашбордом k9s.

Читать далее

Работа с Kubernetes: поднимаем локальный кластер и деплоим в него приложения

Время на прочтение5 мин
Охват и читатели20K

Павел Агалецкий, ведущий разработчик юнита Platform as a Service Авито, написал, как поднять кластер Kubernetes на локальном компьютере Mac с помощью подручных инструментов, а потом задеплоить в него простейшие приложения.

Читать далее

Мультиплатформенные образы: что это такое и зачем они нужны

Время на прочтение7 мин
Охват и читатели14K

Павел Агалецкий, ведущий инженер в Авито, рассказал, как запустить один и тот же образ на разных платформах, почему мультиплатформенные образы удобнее, и как собирать их в режиме кросс-компиляции.

Читать далее

Семантики доставки событий в распределенных системах

Время на прочтение9 мин
Охват и читатели22K

Павел Агалецкий, ведущий разработчик в юните Platform as a Service в Авито, рассказал про семантики или гарантии доставки сообщений, и почему с ними не всегда просто разобраться.

Читать далее

Как построить надёжную шину данных на Apache Kafka

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели25K

С помощью Apache Kafka мы в Авито гарантируем соблюдение контрактов публикуемых событий. Рассказываем, как мы переработали архитектуру и сделали работу с Kafka удобнее и надёжнее.

Мы можем пережить даже полный отказ дата-центра. Почему — тоже расскажем в этой статье.

Читать далее

Паттерны асинхронных обменов на платформе Авито

Время на прочтение11 мин
Охват и читатели14K

Привет! Меня зовут Павел Агалецкий, я старший инженер в команде архитектуры. Одна из областей ответственности нашей команды — синхронное (RPC) и асинхронное взаимодействие между сервисами. 

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

Читать далее

Apache Pulsar как основа для системы очередей

Время на прочтение13 мин
Охват и читатели29K

Меня зовут Агалецкий Павел, я старший инженер в команде Архитектуры. Эта статья про новую для нас в Авито технологию — Apache Pulsar и построение системы очередей, Queues as a Service, на её основе.

Читать далее

Деплой приложений в VM, Nomad и Kubernetes

Время на прочтение15 мин
Охват и читатели12K
Всем привет! Меня зовут Павел Агалецкий. Я работаю тимлидом в команде, которая разрабатывает систему доставки Lamoda. В 2018 году я выступал на конференции HighLoad++, а сегодня хочу представить расшифровку своего доклада.

Моя тема посвящена опыту нашей компании по деплою систем и сервисов в разные среды. Начиная от наших доисторических времен, когда мы деплоили все системы в обычные виртуальные сервера, заканчивая постепенным переход от Nomad к деплою в Kubernetes. Расскажу о том, почему мы это сделали и какие у нас были в процессе проблемы.

Доступ к COM-порту из Java-апплета

Время на прочтение6 мин
Охват и читатели25K
Привет всем. Хочу поделиться решением одной задачи, которая встала передо мной некоторое время назад. Состояла она в том, что было необходимо дать веб-сервису возможность получать доступ и обмениваться информацией с некоторым устройством (в моем случае карт-ридер) через COM-порт на компьютере пользователя. Для этого было решено использовать Java-апплет, и в процессе реализации возникало несколько затруднений, решение которых я и хочу описать в статье. Замечу, что в интернете мне не удалось найти единого руководства «от начала и до конца», как решить мою задачу, так что надеюсь, кому-нибудь моя статья может сэкономить несколько часов времени.

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

Информация

В рейтинге
1 327-й
Откуда
Москва, Москва и Московская обл., Россия
Работает в
Дата рождения
Зарегистрирован
Активность

Специализация

Бэкенд разработчик, Архитектор программного обеспечения
Ведущий
Golang
Apache Kafka
PHP
Kubernetes