Pull to refresh
35
5
Евгений Левашов @levashove

Content Team Lead VK Tech, Lead Editor

Send message

Kubernetes как PaaS: максимум возможностей без разработки. Часть 2

Reading time12 min
Views1.8K

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

Читать далее

Минус Lua, плюс перформанс: как толстый клиент на Go сделал работу с Tarantool эффективнее

Level of difficultyMedium
Reading time10 min
Views3.5K

Tarantool Proxy — «умный посредник», который делает работу с кластером Tarantool надежнее, быстрее и проще, беря на себя рутинные задачи вроде балансировки и безопасности. Но изначально Tarantool Proxy был написан на Lua, из-за чего для получения всех профитов от работы с ним нужна была специфическая экспертиза и готовность мириться с некоторыми сопутствующими издержками, что подходило не всем. Поэтому мы решили оптимизировать работу с Tarantool и использовали для этого толстый клиент на Go.

Меня зовут Максим Коновалов, я архитектор Tarantool в VK Tech. В этой статье я расскажу, зачем и как мы уходили от Lua и что получили в итоге.

Подробнее

Оптимизация конкурентных приложений в Go

Level of difficultyMedium
Reading time15 min
Views7.3K

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

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

Читать далее

Корпоративная разработка: существующие риски и практики обеспечения доверенности в коде

Reading time10 min
Views1K

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

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

Меня зовут Сергей Склабовский. Я менеджер продукта в VK Tech. В этой статье я хочу рассказать о существующих рисках совместной разработки и основных подходах обеспечения доверенности в программном коде при разработке. 

Читать далее

Миф о дешевом железе: полный расчет стоимости КХД для облака и локальных решений

Reading time13 min
Views4.7K

Корпоративное хранилище данных (КХД) — один из ключевых компонентов любой ИТ-системы, который необходим для безопасного хранения и использования всех данных компании. Но построение КХД нередко превращается в «задачу со звездочкой» еще на этапе выбора платформы для развертывания: многим компаниям сложно определить, какой из вариантов будет не только надежнее, но и дешевле. 

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

Материал подготовлен директором центра бизнес-решений VK Tech Константином Дудниковым и директором по развитию облачного бизнеса Группы Arenadata Антоном Близгаревым @beton55.

Читать далее

Как мы делали Go-VShard-router

Level of difficultyMedium
Reading time9 min
Views2.2K

Привет, меня зовут Нуржан Сактаганов, я ведущий разработчик в Почте и Облаке Mail. Хочу рассказать о нашей библиотеке Go-VShard-router и поделиться трюками и выводами, которые мы сделали при разработке.

Читать далее

Не только React: сравнительный анализ React и Jmix для написания UI бизнес-приложений

Reading time31 min
Views2.7K

Раньше, когда трава была зеленей, а доллар стоил 30, в мире enterprise-разработки преимущественно использовались десктопные приложения. Если вспомнить, как выглядели пользовательские интерфейсы в то время, то перед глазами возникает грустная и серая картина из кучи таблиц, кнопок, форм и бесконечно открывающихся экранов поверх других экранов. Также не забудем про тот факт, что бизнес довольно сдержанно относится к любым изменениям, особенно если они требуют дополнительных трат. Из всего этого можно сделать вывод, что красивого UI бизнес-приложений не могло существовать в то время. Однако современные фреймворки, такие как React, позволяют довольно быстро построить красивый и функциональный интерфейс. Но React'ом ли единым? Есть ли другие инструменты для эффективного написания бизнес-приложений?

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

Читать далее

Kubernetes как PaaS: максимум возможностей без разработки. Часть 1

Reading time10 min
Views3.3K

Kubernetes — это не просто оркестратор контейнеров, а целая экосистема инструментов, которые позволяют построить PaaS без написания кода. Helm, ArgoCD, Crossplane, Knative и другие решения делают управление приложениями и инфраструктурой настолько простым, что разработка собственной платформы превращается в задачу конфигурации, а не программирования. Меня зовут Сергей Емельянов, я техлид команды в VK Tech, которая занимается созданием PaaS-платформы на базе Kubernetes для упрощения работы с данными. В серии статей разберем, как создать PaaS, используя мощь Kubernetes и его экосистему.

Читать далее

Адаптированные нейросетевые алгоритмы на отечественных процессорах

Level of difficultyMedium
Reading time11 min
Views3.9K

Привет, Хабр! Меня зовут Сергей Нефёдов, я являюсь руководителем мастерской «Аппаратно-программные комплексы ИИ» в Инженерно-математической школе НИУ ВШЭ и VK. Вместе со студентами мастерской — Русланом Камчазовым и Львом Бабинцевым — мы провели исследование, результатами которого хотим поделиться в этой статье. Целью исследования стало тестирование скорости вывода и эффективности адаптированных современных нейросетевых алгоритмов на отечественных процессорах, таких как «Эльбрус-8СВ», а также ускорителях NM Card и IVA TPU. Особое внимание мы уделили возможности переноса ведущих мировых open-source решений на российскую элементную базу.

Читать далее

Объектное хранилище S3: практическое руководство без лишних слов

Level of difficultyEasy
Reading time4 min
Views9.1K

Объектное хранилище S3 стало стандартом для работы с большими объемами данных в облаке. Оно позволяет хранить файлы любого типа, легко управлять доступом и интегрироваться с другими сервисами. Но давайте без маркетинговых лозунгов: зачем это действительно нужно?

Меня зовут Станислав Погоржельский, я технологический евангелист VK Cloud, и в том числе в рамках своей работы рассказываю про наши облачные и on-prem решения. В этой статье мне захотелось поделиться, как именно объектное хранилище S3 помогает решать реальные задачи.

Читать далее

Как мы учили «1С: Предприятие» работать с объектным хранилищем S3: предпосылки, алгоритм, результат

Reading time8 min
Views3.7K

Платформа «1С:Предприятие» де-факто является стандартом в части ПО для управления процессами и работы с данными для многих компании. Но «стоковых» интеграций, с которыми компании начинают свой путь, не всегда достаточно. Например, со временем бизнес может начать упираться в возможности используемого хранилища и сталкиваться с необходимостью настройки новых интеграций. 

В этой статье расскажем, как компания «ЦЛР ГРУПП» перестраивала работу «1С:Управление торговлей» с локального дискового хранилища на S3: с чего мы начинали, зачем понадобилась миграция, как ее реализовали и что мы получили в результате.

Читать далее

Кросс-бизнес-разработка и что о ней нужно знать: основное из опыта команды VK Tech

Level of difficultyEasy
Reading time12 min
Views921

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

При создании продуктов под разные среды исполнения и сегменты рынка обычно есть два пути: делать несколько продуктов из разных реализаций приложений и сервисов или разрабатывать единый продукт, который впоследствии должен учитывать все требуемое многообразие. Второй подход, который называется кросс-бизнес-разработка ПО (Cross-business software development), — это как раз то, чему следует команда VK Tech при разработке своих продуктов.

Меня зовут Александр Бычук. Я Director of Software Engineering в VK Tech. В статье я расскажу, что такое кросс-бизнес-разработка ПО (Cross-business software development), какие преимущества и недостатки она имеет, а также как мы в команде VK Tech реагируем на вызовы кросс-бизнес-разработки.

Читать далее

Оптимизация промышленных видеокарт для машинного обучения и нюансы тюнинга на примере A30, A100, L4 и L40s

Level of difficultyMedium
Reading time10 min
Views1.7K

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

В этой статье мы разберем базовые принципы и настройки оптимизации проверенных моделей GPU, чтобы эффективнее справляться с задачами машинного обучения. Посмотрим, как настраивать драйверы и библиотеки, управлять памятью, активировать Tensor Cores для ускорения вычислений, использовать технологию MIG для распределения задач и проводить разгон GPU для получения максимальной производительности. Следуя этим рекомендациям, вы сможете ускорить вычислительные процессы и сократить затраты на оборудование, увеличив эффективность работы с большими данными. Разбираться будем на примерах популярных моделей NVIDIA: A30, A100, L40s и L4.

Хочу больше знать

Каталог каталогов

Level of difficultyEasy
Reading time2 min
Views3.4K

Каĸ часто Вы просматриваете содержимое ĸаталога в Linux, BSD*, MacOS? Возможно ĸаждый день, или даже час. А задумывались ли вы над тем, ĸаĸ появились ĸаталоги . и .. ? Каĸово происхождение их названий? В один из вечеров за написанием ĸода я этим заинтересовался и стал исĸать.

Читать далее

Руководство по построению коннекторов к СУБД на примере Tarantool

Reading time18 min
Views2.1K

В сложных ИТ-системах важны не только основные модули, но и механизмы их взаимодействия — коннекторы (они же драйверы). Например, без них сложно выстроить связь приложения с базой данных. Но закрыть все потребности существующими драйверами не всегда возможно: они могут не удовлетворять требованиям по производительности, функциональности или даже совместимости. По этим причинам разработчикам приходится создавать свои драйверы к СУБД.

Меня зовут Иван Банников. Я ведущий разработчик команды Data Integration Team из экосистемы Tarantool. В этой статье я расскажу о разработке драйверов на примере создания коннектора к Tarantool.

Читать далее

Tarantool CDC. Жизнь данных в гетерогенной среде

Level of difficultyEasy
Reading time7 min
Views1.5K

Часто в распределенных ИТ-ландшафтах компании используют несколько хранилищ данных под разные задачи. Это делает их важным компонентом любой системы Change Data Capture (CDC) — они помогают отслеживать изменения данных и связывать используемые хранилища. Но далеко не все CDC-инструменты способны ответить на актуальные запросы бизнеса.

Меня зовут Евгений Афанасьев. Я архитектор VK Tech в команде Tarantool. В этой статье я расскажу о том, с какими вызовами сталкиваются современные компании при работе с данными и как на них помогает отвечать Tarantool CDC.

Читать далее

Выходим за рамки привычных сценариев: как оптимизировать разработку с помощью VK Data Symphony

Reading time6 min
Views481

Лишь 25% времени разработчика уходит на написание кода. Остальное тратится на ревью, созвоны и другие задачи. Поэтому справедливо, что большинство команд разработки использует различные методики и инструменты, которые позволяют оптимизировать и автоматизировать бизнес-процессы.

Разбираемся, что упростить в работе разработчика и как в этом может помочь платформа VK Data Symphony.

Читать далее

Машинное обучение на Spark

Level of difficultyEasy
Reading time14 min
Views2.7K

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

В этой статье вы познакомитесь с таким классом алгоритмов, как ансамблевые методы машинного обучения. А именно — градиентный бустинг на решающих деревьях. В основе они представляют из себя деревья решений, которые являются очень простой структурой, позволяющей получить ответ на основе входных данных. А еще мы разберемся, при чем тут Spark, и посмотрим на эти алгоритмы на практике.

Читать далее

Возможности LLM и RAG на примере реализации бота для поддержки клиентов

Reading time9 min
Views5.9K

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

Меня зовут Александр Волынский. Я технический менеджер продукта в подразделении Applied ML. В этой статье я хочу рассказать об LLM и RAG, вариантах их использования на примере нашего бота для поддержки клиентов, а также о сценариях применения полученной реализации.

Читать далее

Дедупликация в OpenZFS теперь хороша, но использовать её не стоит

Level of difficultyMedium
Reading time28 min
Views7.2K

Вот-вот выйдет релиз OpenZFS 2.3.0 с новой функцией Fast Dedup. Это огромный шаг вперёд по сравнению со старой дедупликацией и отличный фундамент для будущих доработок.

Контрибьютор OpenZFS @gmelikov и команда VK Cloud совместно перевели статью об этом релизе, в которой новая функция сравнивается со старой дедупликацией и описывается максимально подробно с практическими примерами. В 2023–2024 коллеги из Klara много работали над этой функцией, и мы согласны с ними, что она весьма хороша! 

После релиза Fast dedup на многих ресурсах в обсуждениях продолжили писать, что «новый дедуп всё так же плох, он требует столько же ОЗУ и также убивает производительность». Но эта информация лишь отчасти близка к правде и повторяет всё тот же мотив, который когда-то кто-то озвучивал на форумах.

Винить в этом никого не хочется. И не стоит, так как дедупликация в OpenZFS и правда была очень требовательной к правильному применению. Найти качественные гайды тоже не просто, ответ по умолчанию — «не используйте её» — был и (в целом) остаётся правильным. Но, по прошествии почти 20 лет жизни дедупа в OpenZFS, настало время вернуться к этому вопросу.

Посмотрим на свежую информацию об имплементации дедупа в OpenZFS, как он работал до улучшений, в чём была его проблема, что поменяли в fast dedup, и почему же это всё ещё не дефолт.

Читать далее
1
23 ...

Information

Rating
905-th
Location
Калининград (Кенигсберг), Калининградская обл., Россия
Works in
Date of birth
Registered
Activity

Specialization

Content Manager, Content Director
Lead
From 250,000 ₽
Editorial and proofreading
Literary editing
Copywriting
Content management
Rewitting
Media management
Project management
Promotion of projects
Scrum
Automation of processes