Как стать автором
Обновить
-19
0
Николай Бараненко @drno-reg

Сбор, хранение и аналитика

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

Ускоряем Ansible

Время на прочтение4 мин
Количество просмотров13K
Турбокомпрессор в разрезе

Ни для кого не секрет, что с настройками «по умолчанию» Ansible может делать своё дело не слишком быстро. В статье я укажу на несколько причин этого и предложу полезный минимум настроек, которые, вполне возможно, реально увеличат скорость работы вашего проекта.
Cтавим турбо на сток!
Всего голосов 22: ↑22 и ↓0+22
Комментарии31

Создание собственного API на Python (FastAPI): Авторизация, Аутентификация и роли пользователей

Время на прочтение19 мин
Количество просмотров8.8K

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

Как вы поняли из названия, сегодня мы поговорим про авторизацию и аутентификацию. Прежде чем вы приступите к прочтению статьи, настоятельно рекомендую вам ознакомиться с прошлым материалом по теме разработки собственного API через FastApi.

Читать далее
Всего голосов 5: ↑3 и ↓2+1
Комментарии1

Как работает etcd с Kubernetes и без него

Время на прочтение23 мин
Количество просмотров14K

Если вы когда-либо взаимодействовали с кластером Kubernetes, скорее всего, он был основан на etcd. etcd лежит в основе работы Kubernetes, но несмотря на это, напрямую взаимодействовать с ним приходится не каждый день.

Этот перевод статьи от learnk8s познакомит вас с принципами работы etcd, чтобы вы могли глубже понять внутреннюю работу Kubernetes и получить дополнительные инструменты для устранения неполадок в вашем кластере. Мы установим и сломаем кластер etcd с тремя нодами и узнаем, почему Kubernetes использует etcd в качестве базы данных.

Читать далее
Всего голосов 22: ↑22 и ↓0+22
Комментарии2

Яндекс выложил в опенсорс YDB

Время на прочтение16 мин
Количество просмотров144K
Сегодня мы выложили в опенсорс систему управления базами данных YDB — плод многолетнего опыта Яндекса в разработке систем хранения и обработки данных. Исходный код, документация, SDK и все инструменты для работы с базой опубликованы на GitHub под лицензией Apache 2.0. Развернуть базу можно как на собственных, так и на сторонних серверах — в том числе в любых облачных сервисах.



YDB решает задачи в одной из самых критичных областей — позволяет создавать интерактивные приложения, которые можно быстро масштабировать по нагрузке и по объёму данных. Мы разрабатывали её, исходя из ключевых требований к сервисам Яндекса. Во-первых, это катастрофоустойчивость, то есть возможность продолжить работу без деградации при отключении одного из дата-центров. Во-вторых, это масштабируемость на десятки тысяч серверов на чтение и на запись. В-третьих, это строгая консистентность данных.

В посте я расскажу об истории развития технологий баз данных, о том, зачем использовать YDB, как её применяют текущие пользователи и какие плюсы для всех несёт выход в опенсорс. А во второй половине поста поговорим о разных вариантах развёртывания.
Читать дальше →
Всего голосов 262: ↑259 и ↓3+329
Комментарии135

Навигация в приложениях Flutter: разбираем Navigator, Router и лучшие библиотеки

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров2.4K

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

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

Основной идеей навигации в Flutter является стековая организация экранов, где каждый экран представлен своим виджетом. Переходы между экранами осуществляются путем добавления и удаления маршрутов из стека.

Читать далее
Всего голосов 3: ↑3 и ↓0+5
Комментарии0

ETL и ELT: ключевые различия, о которых должен знать каждый

Время на прочтение10 мин
Количество просмотров39K
image

ETL и ELT — самые широко используемые способы доставки данных из одного или нескольких источников в централизованную систему для удобства доступа и анализа. Обе этих методики состоят из этапов extract (извлечения), transform (преобразования) и load (загрузки). Разница заключается в последовательности действий. Хотя можно подумать, что небольшое изменение в порядке этапов никак не влияет, на самом деле для потока интеграции это меняет всё.

В этом посте мы подробно рассмотрим процессы ETL и ELT, а также сравним их по важным критериям, чтобы вы могли понять, какой лучше подходит для вашего конвейера данных.
Читать дальше →
Всего голосов 8: ↑5 и ↓3+3
Комментарии9

Hadoop в Облаке: история миграции сотен петабайт

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

Миграция с «железа» в облако в большинстве случаев уже не кажется чем-то сложным или удивительным — тенденция на развертывание решений в облаке общая и устоявшаяся. Но если с переносом в облачную среду небольших ИТ-компонентов все просто, то в случае с глобальными системами на сотни петабайт данных все несколько иначе — такие кейсы встречаются редко. 

Меня зовут Михаил Марюфич. Я руководитель Data Platform в ОК, отвечаю за инфраструктуру для Big Data и машинного обучения. В этой статье я расскажу о нашем опыте переноса Hadoop с Bare Metal в облако: с чего стартовали, какие варианты рассматривали, как выстроили миграцию и с чем сталкивались в процессе.

Читать далее
Всего голосов 30: ↑30 и ↓0+30
Комментарии4

Пуш-уведомления RuStore

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров7.1K

Привет! Меня зовут Артем Ковардин, я работаю в VK и мы с командой разрабатываем Push Service RuStore и SDK для него. Если вы занимаетесь разработкой мобильных приложений и хотели бы иметь канал коммуникации с пользователями или же вам просто интересно то, как работают разработанные нами пуш-уведомления и как их можно масштабировать и интегрировать, то статья ниже — для вас. 

Читать далее
Всего голосов 37: ↑34 и ↓3+35
Комментарии8

Введение в Apache Flink: осваиваем фреймворк на реальных примерах

Время на прочтение10 мин
Количество просмотров14K

Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Недавно мы начали использовать фреймворк Apache Flink. Эту технологию выбрали, так как она (в отличие от Apache Spark) относится к true-стримингу и позволяет строить обработку данных с минимальной задержкой. В качестве DI-фреймворка выбрали привычный нам Spring Framework.

Наша команда использует разные виды тестирования: Unit, интеграционное, E2E, ручное, автоматизационное, нагрузочное. Этой теме будет уделено особое внимание. Я расскажу, какие подходы и паттерны помогут быть уверенными в качестве того, что вы разработали.

Эти знания будут полезны любому Java-разработчику, знакомому со Spring. А начинающие Flink-специалисты найдут здесь примеры стандартных ошибок и пути их решения. Обратите внимание, что эти материалы писались, когда актуальной версией Flink была 1.17. В конце октября вышла версия 1.18, и она может отличаться некоторыми нюансами.

Читать далее
Всего голосов 34: ↑34 и ↓0+34
Комментарии9

Как выглядят собеседования сейчас

Время на прочтение8 мин
Количество просмотров132K

Времена меняются, меняется it-индустрия. Крупные it-игроки ушли, с ними ушли стандарты, топовые специалисты и рабочие места. Соотношение вакансий и резюме удручает, всё выглядит как конкурс на бюджетные места в топовых вузах.

Я являюсь .Net разработчиком с опытом лидинга и набора специалистов в команду. На текущем месте работаю 2 года, но за этот срок многое изменилось. Решил проверить, что же сейчас с рынком, и сколько же я стою сейчас как специалист. За 2 недели я прошёл 30 собеседований и хочу поделиться некоторыми из них, высказать свои замечания и выводы.

Читать далее
Всего голосов 252: ↑243 и ↓9+282
Комментарии461

Как WhatsApp справлялся с 50 миллиардами сообщений в день, имея всего 32 инженера

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

Январь 2008 года — Калифорния, США.

Инженер Ян Кум нанимается на работу в Facebook* — получает отказ.

Это был не конец — он продолжил двигаться дальше.

В следующем году он покупает iPhone и сразу же понимает огромный потенциал нового App Store.

С несколькими бывшими коллегами из Yahoo он решает создать программу мгновенного обмена сообщениями. Программе дают имя WhatsApp. Предназначение WhatsApp — стать заменой дорогостоящим SMS.

Рост популярности WhatsApp поражает воображение — каждый день в него заходит один миллион людей.

WhatsApp мог справляться с 50 миллиардами сообщений в день от 450 миллионов активных пользователей, имея в штате всего 32 инженера.

Хотя взрывной рост продукта — это приятная проблема, для её решения Яну Куму и команде разработчиков WhatsApp пришлось применить самые передовые технологии проектирования.
Читать дальше →
Всего голосов 60: ↑48 и ↓12+57
Комментарии76

Shawarma as a service: как создать бота для заказа шавермы и оставить голодными лишь 1,1% коллег

Время на прочтение12 мин
Количество просмотров21K

Полтора года назад в Selectel появилась традиция кушать шаверму по четвергам. Акция, названная Шавадеем, быстро обрела популярность. С увеличением количества адептов ее организационные моменты — в частности, сбор и отправка заказов — становились все сложнее. На помощь позвали программиста — меня.

В этой статье я расскажу, как мы автоматизировали организацию шавадея, написав бота, как Telegram вставлял палки в колеса, как я с этим боролся и что в итоге получилось. В конце вас ждет статистика, которая покажет вкусовые предпочтения разработчиков и «охваты» традиции. А еще ответит на вопрос, сколько людей остались без еды из-за бэкэндера, который до этого никогда не занимался проектированием пользовательских интерфейсов.
Читать дальше →
Всего голосов 77: ↑77 и ↓0+77
Комментарии13

Как мы в QIWI внедряли Kotlin Multiplatform Mobile (KMM)

Время на прочтение6 мин
Количество просмотров8.2K

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

Меня зовут Кирилл Васильев, и я хотел бы рассказать, как мы в QIWI внедряли Kotlin Multiplatform Mobile (KMM). 

КММ — это технология кроссплатформенной разработки, позволяющая писать общий код под основные платформы за исключением UI-слоя. Все продукты со временем накапливают очень большой технологический контекст; КММ, в свою очередь, позволяет его облегчить, делая компоненты технологического стека общими для команд и платформ. Такие технологии дают неоспоримые преимущества — возможность использовать ресурс каждого разработчика при создании новых фич, единый набор тестов, улучшение инженерных практик в командах и прочее.

Читать далее
Всего голосов 19: ↑19 и ↓0+19
Комментарии3

Создаем клон Instagram при помощи Flutter и Feeds. Часть 1

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров6.9K

В этой статье мы расскажем как вы можете с легкостью создать клон Instagram* при помощи Stream Feeds и Flutter.

Подойдя к вопросу с «максимальным креативом», мы решили назвать наш клон Stream-agram. Вы также узнаете многое про основные принципы работы с Flutter, и как с его помощью вы сможете улучшить анимации, жесты, переходы, а также управление состоянием.

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Комментарии3

Apache Ozone: следующее поколение хранилища для платформы больших данных

Время на прочтение8 мин
Количество просмотров7.7K

Apache Ozone: следующее поколение хранилища для платформы больших данных

Распределенная файловая система Apache Hadoop (HDFS) де-факто является файловой системой для больших данных. Верная своим корням big data, HDFS работает лучше всего, когда большинство файлов имеют большой размер - от десятков до сотен мегабайт.

Ozone - это распределенное хранилище, которое может управлять как малыми, так и большими файлами. Ozone разрабатывается и внедряется командой инженеров и архитекторов, имеющих значительный опыт управления большими кластерами Apache Hadoop. Это дало нам представление о том, что HDFS делает хорошо, и о некоторых вещах, которые можно делать по-другому.

Читать далее
Всего голосов 4: ↑3 и ↓1+6
Комментарии1

Жизнь после Docker: как команда VK Cloud переходила на CRI-O

Время на прочтение7 мин
Количество просмотров19K


Kubernetes прекратил поддержку Docker и отказался от dockershim — прокладки между kubelet и Docker, которая позволяет последнему работать с CRI. В итоге разработчики столкнулись с необходимостью использования новых, совместимых с CRI, движков для запуска контейнеров. Из числа общеизвестных таких два — containerd и CRI-O.

Меня зовут Александр Чадин, я руководитель команды разработки в VK Cloud. Расскажу, как мы искали замену Docker для сервиса Cloud Containers, на что ориентировались при выборе нового движка, как внедряли новое решение и с какими подводными камнями при этом столкнулись. 
Читать дальше →
Всего голосов 38: ↑38 и ↓0+38
Комментарии9

Праздник к нам приходит: новогодний сезон Kubernetes на Хабре

Время на прочтение14 мин
Количество просмотров41K

С 29 декабря 2022 до 24 февраля 2023 Хабр вместе с #CloudMTS запускает сезон Kubernetes — конкурс технических статей о K8s, оркестрации и управлении контейнерами. Это третий сезон Хабра: летом и осенью мы уже неслабо продвинули пачку крутейших хардкорных текстов о Java и Data Mining. Теперь пришла пора разобрать по косточкам Kubernetes и относящиеся к нему DevOps-практики.

UPD. Сезон закончился, итоги можно посмотреть в этой статье.

Читать далее
Всего голосов 24: ↑20 и ↓4+36
Комментарии5

Первая попытка gitlab-ci на фронте

Время на прочтение4 мин
Количество просмотров9.1K

Эта статья о сценарии развертывания фронта, через инструменты Gitlab-CI.


Я использую GitLab-CI, а носителем исполнения скриптов GitLab Runner (об этом позже) пусть будет простой дроплет от DO

Читать дальше →
Всего голосов 10: ↑2 и ↓8-6
Комментарии0

Мониторинг служб Linux c помощью Prometheus

Время на прочтение2 мин
Количество просмотров7.7K

Автор: Senior Devops. Ведущий специалист по инфраструктуре Hostkey Никита Зубарев

В прошлой статье мы рассказывали, как для мониторинга сервисов с помощью Prometheus настроить сбор метрик и отображение тревог. Однако в процессе эксплуатации возник вопрос, как мониторить отдельные службы на серверах Linux. Например, в одной из прошлых статей мы описывали кейс использования веб-консолей Ovirt c помощью Apache Guacamole. Теперь рассмотрим, как организовать мониторинг работы сервисов на Linux-машинах.

Читать далее
Всего голосов 5: ↑1 и ↓4-3
Комментарии4

Прощай, Data Science

Время на прочтение9 мин
Количество просмотров45K

Это по большей мере личный пост, а не какое-то глубокое исследование. Если вам нужны какие-то выводы, то здесь вы их не найдёте. Откровенно говоря, я даже не знаю, кто его целевая аудитория (возможно «дата-саентисты, которые себя ненавидят»?).

Последние несколько лет я был дата-саентистом, но в 2022 году получил новую должность дата-инженера, и пока я ею вполне доволен.

Я по-прежнему работаю вместе с «дата-саентистами» и немного продолжаю заниматься этой сферой, но вся моя работа по «data science» заключается в руководстве и консультировании по чужой работе. Я в большей степени занимаюсь реализацией data science (MLOps) и дата-инжинирингом.

Основная причина разочарования в data science заключалась в том, что работа казалась несущественной, во многих смыслах этого слова «неважной»:

  • Работа — это непрекращающийся поток разработки, продукта и офисной политики, поэтому часто так бывает, что работа хороша настолько, насколько хорошо самое слабое звено в цепи.
  • Никто не знал, в чём заключается разница между плохой и хорошей работой в data science, да никого это и не волновало. Это значит, что вы можете быть абсолютным неудачником или гением в ней, но в любом случае получите примерно одинаковое признание.
  • Работа часто приносила очень малую пользу бизнесу (часто компенсируя некомпетентность выше по цепочке управления).
  • Когда польза от работы превышала затраты на оплату труда, часто это не давало внутренней отдачи (например, настройка параметра, чтобы бизнес зарабатывал больше денег).
Читать дальше →
Всего голосов 47: ↑45 и ↓2+60
Комментарии45

Информация

В рейтинге
Не участвует
Откуда
Краснодар, Краснодарский край, Россия
Дата рождения
Зарегистрирован
Активность