Pull to refresh
1
0
mariashafran @Masha_Shafran

Дизайнер

Send message

PopStick: одноплатный ПК на Linux в формфакторе флешки за $29. Что он умеет?

Reading time3 min
Views29K
image

Компания Popcorn Computer представила свою новую разработку — одноплатный ПК PopStick. Его формфактор похож на флешку, а сам девайс полностью открытый, включая как софт, так и «железо». Конечно, рекордов производительности он не бьет, но для определенных задач это отличный вариант. Стоимость девайса при этом — всего $29. Подробности — под катом.
Читать дальше →

Управление сетевой инфраструктурой: разбираем технологию SD-WAN

Reading time6 min
Views6.4K
image

Программно-определяемые глобальные сети (SD-WAN) помогают производить централизованную настройку сетевой инфраструктуры и свести действия сетевых администраторов к минимуму. Благодаря этой технологии можно избавиться от ручного конфигурирования десятков (а в крупных компаниях и сотен) свитчей, роутеров, веб-интерфейсов и служебных сервисов.
Читать дальше →

Cloud vs. on-premise — как получить ресурсы для старта вашего проекта

Level of difficultyEasy
Reading time5 min
Views2.2K
image

Чтобы поддерживать темпы развития, ИТ-компаниям жизненно необходимы вычислительные ресурсы. Нехватка инфраструктуры — это одна из «болезней роста» разработчиков приложений и сервисов.

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

Многие небольшие компании закупают аппаратное обеспечение под MVP, тесты и проверку гипотез. Но такой подход влечет за собой ряд неудобств.

Альтернативное решение — готовые виртуальные машины в облаке.

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

Интеграция с инфраструктурой NB-IoT МТС. Теория и практика. Часть 4

Reading time3 min
Views1.5K

Привет, Хабр! Эта статья — продолжение цикла материалов «Интеграция с инфраструктурой NB-IoT МТС». Вот первая, вторая и третья части. Сегодня поговорим о сервере приложений, его функциях и возможностях. Кроме того, расскажем и о том, что мы в МТС используем для создания тестового сервера приложений и как это работает. Самое интересное — под катом!

Читать далее

CDN — как взять и ускорить доставку контента за счет сервиса #CloudMTS

Level of difficultyEasy
Reading time5 min
Views2.5K
image

С начала 90-х веб-сайты проделали длинный путь. Размер первых из них редко превышал 4 Кбайт. С тех пор эта цифра значительно увеличилась. По данным HTTP Archive, в 2012 году средний размер страницы для десктопа составлял 803 Кбайта, а спустя десять лет — уже 2284 Кбайта. Все это, несомненно, отразилось на скорости загрузки и доставки контента до аудитории.

Есть мнение, что современные интернет-ресурсы стали слишком неповоротливыми. На фоне этой концепции возникли проекты 512 или 250 Кбайт, участники которых уменьшают веб-ресурсы до соответствующих размеров. Отдельные энтузиасты выжимают из оптимизации все соки. Они разрабатывают сайты весом до 14 Кбайт, и такой размер выбран неслучайно.

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

Дорожная карта DevOps: от новичка до эксперта

Level of difficultyEasy
Reading time6 min
Views53K
image

Медианная зарплата DevOps-инженеров в России — 235 000 руб. Выглядит заманчиво, но порог входа в профессию высокий. Чтобы стать экспертом в области DevOps, нужно получить опыт работы с Linux и облачными платформами, выучить языки программирования, освоить инструменты автоматизации и виртуализации.

Для тех, кто хочет развиваться в сфере DevOps, дорожная карта станет полезным инструментом. Сегодня расскажем, где получать знания, в каких областях полезно разбираться DevOps-инженеру, какие навыки рекомендуют подтянуть эксперты.

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

Как мы делали API для облака

Level of difficultyEasy
Reading time14 min
Views3.1K

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


На связи Вячеслав Шмельцер, backend-разработчик, и Рамиль Алешкин (alewkinr), Product Owner Консоли управления #CloudMTS.


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


Надеюсь, что наш подход окажется полезным тем, кому только предстоит написать API для своего сервиса.


image

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

Отказоустойчивая архитектура контентной платформы на 4 Тбит/с — опыт VK Видео

Reading time16 min
Views23K

Представьте идеальный мир с бесконечными ресурсами, в котором можно сколько угодно линейно масштабироваться под нагрузку: просто доставлять серверы, диски, видеокарты, как только потребуется больше мощностей. Звучит хорошо? Только оказывается, что когда серверов 5 000 и дисков 100 000, то несколько из них обязательно находятся в состоянии maintenance или repair, куда их привели обстоятельства непреодолимой силы. И главная задача здесь — обеспечить доступность сервиса в условиях постоянных сбоев. 

В статье разберём, как построить отказоустойчивую платформу, с какими неочевидными corner cases может столкнуться сервис с UGC-контентом, а ещё — как жить в реальном, а не идеальном мире и оптимизировать железо. Чтобы раздавать 4 Тбит/с можно, конечно, использовать 400 серверов по 10 Гбит/с, но гораздо интереснее грамотно всё потюнить и выжать 100 Гбит/с с Java-сервера.  

Читать далее

Когда данных слишком много… как оптимизировать хранение

Level of difficultyEasy
Reading time5 min
Views5K
image

Каждый день человечество генерирует порядка 330 млн терабайт данных. Хотя по оценкам экспертов Google всего 10% из них являются свежими и оригинальными, даже копии копий нужно где-то хранить. И эта задача имеет ряд нюансов. Здесь уместно провести аналогию с известным транспортным парадоксом: чем больше дорог строится, тем больше образуется автомобилей, чтобы заполнить их (постулат Льюиса — Могриджа).

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

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

Создаем типовое локальное окружение для разработчика

Level of difficultyMedium
Reading time6 min
Views4.5K
image

Привет! Снова на связи Петр Коробейников, техлид серисов Redis и RabbitMQ в #CloudMTS.
Сегодня мы поговорим о самой главной составляющей Developer Experience (DX) — локальном окружении разработчика. Вернее о том, как сделать так, чтобы оно разворачивалось быстро и автоматизированно, а еще было единообразным у всех участников команды.


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


Зачем нужно типовое локальное окружение для разработчика — объяснять не нужно. Просто вспомните ваш технический онбординг. Чаще всего вместо него вам предлагается проштудировать некоторое количество недописанных статей в конфлюенсе, из которых мало что можно было понять.

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

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

Level of difficultyMedium
Reading time7 min
Views3.1K
image

Всем привет!

На связи Михаил, и я продолжаю делиться историями про рефакторинг одного из сервисов облачной платформы #CloudMTS. В прошлый раз я рассказывал о том, как мы аккуратно раскладывали по папочкам код в соответствии с принципами чистой архитектуры. Сегодня поговорим о решении, которое позволяет нам распиливать монолит по кусочкам без простоев.

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

Наши причины перехода были следующими:

  1. В монолите концентрировалось большое количество бизнес-процессов, которые охватывали сразу несколько потребителей: пользователей облачной платформы, сейлз-менеджеров (через CRM-систему), администраторов, обработчиков метрик. Получилась такая одна большая точка отказа сразу для 4 групп бизнес-процессов.
  2. Каждый бизнес-процесс потребляет свой объем ресурсов. Например, для обработки метрик нужно 5 подов (чтобы запараллелить и ускорить обработку), для администрирования хватит и одного. Так как у нас все в одном сервисе, при масштабировании монолита мы будем ориентироваться на самый «прожорливый» бизнес-процесс. Часть ресурсов будет просто простаивать.
  3. Хотелось добиться гранулярности, чтобы независимо писать и деплоить код для каждого бизнес-процесса. И не переживать, что какие-то изменения в одном бизнес-процессе неожиданно отрикошетят в соседний.

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

Несколько мыслей по подготовке к алгоритмической части собеседования

Level of difficultyEasy
Reading time9 min
Views8.7K
image

Всем привет! На связи снова Петр Коробейников, техлид сервисов DBaaS for Redis и RabbitMQ (релиз скоро) в #CloudMTS. В этой статье хочу поделиться с вами некоторым опытом подготовки к прохождению алгоритмических интервью. Конечно, статья не про хардкорные алгоритмы. Это, скорее, эскиз к роадмапу по подготовке. Тем не менее, я надеюсь, он будет полезен новичкам (и даже некоторым «старичкам»).

Готовьтесь


Это первый и самый важный совет. Если вы думаете, что, ворочая базами в десятки терабайт, вывозя 50-100k RPS к фронту, обрабатывая десятки миллионов сообщений в Kafka, вы сможете перенести свой опыт на решение алгоритмических задач, то могу вас немного расстроить.

Двоичное дерево без подготовки вы сможете покрутить в лучшем случае только на неприличном месте. Это чем-то похоже на экзамен по математике или физике: вы не сможете вывести формулу, если не знакомы с теорией и не решали задачи заранее. И вас будет ждать обидный провал.
Читать дальше →

Облегчаем жизнь разработчиков на Go: полезные советы и лайфхаки для начинающих

Level of difficultyEasy
Reading time4 min
Views6.1K
image

В #CloudMTS мы активно используем Go. Например, Go основной язык в балансировщике нагрузки (GSLB), в сервисах создания и управления кластерами PostgreSQL и Redis.

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

Сегодня поговорим об инструментарии и подходах, которые помогают получить читаемый и поддерживаемый код, а вместо с ним — производительные и надежные сервисы. Backend-разработчик в подразделении DBaaS Герман Лепин (german_lepin) выступил экспертом для нашей статьи.

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

Чек-лист по добавлению новой базы данных в стек

Level of difficultyMedium
Reading time12 min
Views3.2K

Всем привет! Я Ильшат, занимаюсь базами данных в #CloudMTS. За свою карьеру работал с различными СУБД (PostgreSQL, MongoDB, ClickHouse, Redis, MySQL, MariaDB, GreenPlum, etcd) и со временем у меня созрела методика добавления СУБД в стек эксплуатации.

Сегодня хочу поделиться чек‑листом, который поможет учесть все значимые аспекты работы базы данных. Он пригодится в следующих случаях:

уже есть база в продуктиве, и ее нужно забрать к себе на администрирование;

нужно быстро разобраться в новом типе СУБД, с которой вы не работали ранее, но которая скоро будет использоваться в вашем проекте;

у вас «зоопарк» из СУБД, и нужно стандартизировать подход к развертыванию баз данных;

провести аудит инфраструктуры СУБД.

Статья пригодится не только DBA, но и тем, кто по долгу службы занимается поддержкой СУБД, например системным администраторам, а также инженерам, отвечающим за надежность инфраструктуры — DevOps и SRE.

Так как статья вышла довольно увесистой, в каждом разделе расписал две опции: в первой сформулировал базовые требования, которые помогут создать минимальный продукт (MVP), во второй — про более тонкие настройки и лучшие практики, ее спрячу под спойлер. Пару разделов «для продвинутых» отправлю под спойлер полностью.

Читать далее

Основы нативной облачной архитектуры: cloud-native подход, приложения и разработка

Level of difficultyEasy
Reading time8 min
Views5.9K
image

К 2025 году, по оценкам Gartner, более 95% новых цифровых проектов будут развернуты на облачно-нативных платформах. В 2021 году таких было всего 30%.

Согласно отчету компании Tigera (создатели open source проекта Calico, который заметно расширяет стандартный набор API Kubernetes), уже 75% опрошенных компаний превращают свои продукты и услуги в нативно-облачные.

Мы подготовили перевод статьи, чтобы познакомить вас с основами cloud-native-приложений. Материал будет полезен, если вы планируете работать с нативной облачной архитектурой или использовать облачную стратегию развития ИТ-инфраструктуры.

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

Достучаться до ИИ: сезон больших данных на Хабре

Reading time15 min
Views27K

Ладно, не заливай! Ни разу не был на берегах Data Lake?! Пойми, в IT только и говорят, что о Data Lake! Как оно бесконечно прекрасно. О бигдате и графах, которые они видели. О том, как дата-сайентист, погружаясь в море данных, преисполнился знания. Мы не хотим, чтобы Хабр там наверху окрестили как-нибудь не так, а потому ещё с начала года мощно прокачиваем ИИ-ландшафт самыми хардкорными и глубокими текстами: уже отгремел сезон ML, закончилась неделя нейроарта, а теперь совместно с Газпромбанком стартует сезон Big Data. 

Читать далее

Для чего нужен и как работает сервис для облачного онлайн-видеопродакшена CloudMix

Level of difficultyEasy
Reading time5 min
Views1.8K
image

Привет, я Сергей Корнеев, ведущий системный аналитик команды профессионального стриминга #CloudMTS. Наша команда разрабатывает CloudMix — облачный сервис для онлайн-видеопродакшена. Сейчас продукт находится на этапе бета-тестирования и активной разработки обширного роадмапа, и мы активно собираем обратную связь от пользователей. В бета-тесте принимают участие более 300 человек, выйти в продакшен планируем в конце лета – начале осени 2023 года.

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

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

Как объяснить детям, что такое DNS, Kafka, Kubernetes, облака

Level of difficultyEasy
Reading time4 min
Views8.7K

Мы в #CloudMTS разделяем мнение, что важно объяснять своим детям устройство различных цифровых технологий. Но пытались ли вы когда-нибудь рассказать ребенку о, например, Apache Kafka as a Service? Ответ на вопрос, «чем занимается папа/мама?» может оказаться гораздо сложнее, чем хрестоматийное «почему небо голубое, солнце желтое, а трава зеленая?».

Поэтому не удивительно, что однажды мы решили собрать вместе несколько ресурсов, которые помогут нашим (и вашим) детям узнать больше об ИТ.  Кроме того, умение объяснить доступным языком, как работает та или иная технология, помогает лучше разобраться в вопросе. Такой навык пригодится, если приходится часто взаимодействовать с не техническим персоналом — например, бухгалтерами или маркетологами.

Читать далее

Как мы управляем распределенными транзакциями в сервисах #CloudMTS. Без саг

Level of difficultyMedium
Reading time8 min
Views4.1K
image

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

Меня зовут Илья Казначеев (Color), я техлид в команде #CloudMTS.

Представьте, что у вас есть распределенный процесс. Он состоит из сотни шагов: часть из них выполняется последовательно, часть — параллельно. Каждый шаг подразумевает один или несколько вызовов отдельных сервисов. Управление состоянием в такой системе — задача сложная. Как сделать так, чтобы изменение состояния происходило детерминированно: чтобы транзакция либо выполнилась, либо нет, чтобы процесс либо завершился полностью, либо откатился полностью. Как понять, что произошла ошибка, а главное – что нужно сделать, чтобы процесс пошел дальше или перезапустился.

Такую задачу мы решали для одного из наших сервисов Containerum Kubernetes Service, и в этой статье я расскажу, как мы научились управлять распределенными транзакциями, включающими 200–300 шагов и дюжину сервисов.

Сразу скажу, что в статье речь пойдет не о распределенных транзакциях баз данных, а о транзакциях уровня бизнес-логики приложения.
Читать дальше →

Объяснить физику ИИ на сгустке шума капли чернил золотой рыбки

Level of difficultyMedium
Reading time9 min
Views2.2K
image

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

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

Более того, знание физики — хард скилл, без которого, вероятно, вы останетесь за бортом прогресса в одной из самых динамично развивающихся областей. Этот тезис иллюстрирует статья «Quanta magazine», перевод которой мы подготовили.
Читать дальше →

Information

Rating
Does not participate
Location
Россия
Works in
Date of birth
Registered
Activity

Specialization

Web Designer, Graphic Designer
Junior
Web development