Как стать автором
Обновить
VK
Технологии, которые объединяют
Сначала показывать

Призраки, шаманы и шамановоды: как мы конструируем геймплей для игры Rush Royal

Блог компании VK Разработка игр *Unity *

Привет, Хабр! Меня зовут Катя Невзорова, я старший программист в департаменте Игры. В этом материале я решила поделиться тем, как мы с командой делаем геймплей для игры Rush Royal.

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 1K
Комментарии 0

Новости

KPHP спустя 2 года

Блог компании VK Open source *PHP *C++ *Компиляторы *

Ровно два года назад — в ту же самую дату и в то же самое время — я опубликовал статью «ВКонтакте снова выкладывает KPHP».

Сегодня рассказываю, куда мы продвинулись за эти два года: про язык, рантайм, использование KPHP вне ВКонтакте, другие open-source проекты и февраль 2022-го.

Читать далее
Всего голосов 50: ↑47 и ↓3 +44
Просмотры 5.5K
Комментарии 18

Изобретая бота: система обработки сообщений на примере конструктора чат-бота

Блог компании VK Блог компании KTS Мессенджеры *IT-инфраструктура *Tarantool *


Привет, Хабр! Я Игорь Латкин, архитектор в KTS. Мы занимаемся различными цифровыми продуктами для бизнеса, специализируемся на HRTech, EdTech и DevOps. Также у нас есть несколько собственных продуктов, и один из них тесно связан с очередями сообщений. Об этом интересном решении я хочу сегодня рассказать. Эта статья — конспект моего диалога с архитектором Tarantool Монсом Андерсоном. Посмотреть видео можно в записи. Бонусом в конце — ответы на вопросы зрителей.
Читать дальше →
Всего голосов 44: ↑44 и ↓0 +44
Просмотры 2.7K
Комментарии 1

От Single-Instance-прототипа до облачной промышленной платформы интернета вещей: как мы разрабатывали Cloud IoT Platform

Блог компании VK Big Data *Облачные сервисы *Интернет вещей Tarantool *

В продуктовой разработке нередко случается, что из кастомного проекта для конкретной компании рождается самостоятельный продукт. Так случилось и с Cloud IoT Platform: из небольшого пилотного проекта мы создали облачную промышленную платформу интернета вещей.

Читать далее
Всего голосов 37: ↑37 и ↓0 +37
Просмотры 581
Комментарии 0

Магазин приложений RuStore: зачем он нужен и чем полезен

Блог компании VK Разработка мобильных приложений *Монетизация мобильных приложений *

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

Читать далее
Всего голосов 74: ↑62 и ↓12 +50
Просмотры 10K
Комментарии 33

Вижу цель: три решения задачи по созданию предсказательной ML-модели

Блог компании VK Big Data *


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

Создание точных интеллектуальных систем — актуальная и сложная задача. Актуальная, потому что интеллектуальные системы активно используют, например, интернет-магазины, стриминговые сервисы, развлекательные площадки. Алгоритмы помогают компаниям повысить конверсию и средний чек, увеличить лояльность и уменьшить отток клиентов. 
Читать дальше →
Всего голосов 35: ↑35 и ↓0 +35
Просмотры 729
Комментарии 0

Что ждет data-инжиниринг в будущем

Блог компании VK Big Data *Хранилища данных *


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

Что такое data-инжиниринг


Давно ли работающие с данными компании открыли новую профессиональную область и мы услышали термин «data-инжиниринг»? Лет десять назад. Когда бизнес осознал, насколько полезными могут быть данные, спрос на data-инженеров резко вырос. По данным Google, отмечается экспоненциальный рост интереса к термину «data-инженер», который достиг пика примерно в 2020 году.



Так что же такое data-инжиниринг, столь стремительно набравший обороты и остающийся востребованным вот уже несколько лет?  В традиционном понимании data-инженерами называют людей, занимающихся перемещением, формированием и преобразованием данных из источников с помощью инструментов извлечения аналитических сведений, которые нужны для работы разных отделов компании.
Читать дальше →
Всего голосов 16: ↑15 и ↓1 +14
Просмотры 2.7K
Комментарии 2

nocc — распределённый компилятор для гигантских проектов на С++

Блог компании VK Высокая производительность *Программирование *C++ *Распределённые системы *

У нас есть задача постоянно компилировать тонны плюсового кода. Наш проект — почти 200 000 cpp- и h-файлов, множество Git-веток, сотни разработчиков, десятки билд-агентов: его нельзя единожды скомпилировать, приходится перекомпилировать постоянно, параллельно, разные версии.

Наш проект необычный. Потому что эти 200 000 файлов — это результат автогенерации. Потому что пишем мы на PHP, а потом через KPHP все PHP-исходники превращаются в плюсы. Именно так разрабатывается бэкенд ВКонтакте.

Компилировать тысячи объектников долго. Локально это занимает много часов. Мы использовали distcc — но всё равно медленно. Мы даже пропатчили distcc для поддержки precompiled headers — но даже тогда медленно. И решили написать своё — чтоб стало, наконец, быстро.

В итоге мы написали замену distcc — компилятор nocc. Он не имеет никакого отношения к PHP и даже к KPHP, а просто предназначен для компиляции .cpp.o в промышленных масштабах.

Это техническая статья про параллелизацию, демоны и специфику С++. Ссылки на GitHub и видео приложу в конце статьи.

Читать далее
Всего голосов 110: ↑108 и ↓2 +106
Просмотры 10K
Комментарии 69

Open Source для MLOps: сравнение популярных решений

Блог компании VK Open source *Облачные вычисления *DevOps *Облачные сервисы *


Здравствуй, Хабр! Меня зовут Александр Волынский, я занимаюсь разработкой ML Platform в VK Cloud. Наша ML-платформа стала доступна пользователям совсем недавно, некоторые из её компонентов сейчас находятся на этапе бета-тестирования. В этой статье я расскажу, как мы выбирали Open-Source-инструменты для MLOps-платформы, какие решения сравнивали, на каком варианте остановили выбор и почему. 
Читать дальше →
Всего голосов 39: ↑39 и ↓0 +39
Просмотры 2K
Комментарии 0

Чем занимается AppSec?

Блог компании VK Информационная безопасность *

Не так давно мне в очередной раз задали вопрос: «Чем занимается AppSec?». И обычно, отвечая на этот вопрос в двух словах, я чувствую, что должен дать больше информации. Поэтому решил подготовить эту статью.

Читать далее
Всего голосов 29: ↑29 и ↓0 +29
Просмотры 3.2K
Комментарии 0

Эволюция архитектуры данных: как потребности бизнеса изменили инструменты для хранения данных

Блог компании VK Big Data *Машинное обучение *Хранилища данных *DevOps *


Команда VK Cloud перевела статью о том, как с течением времени менялась и развивалась архитектура данных и какие инструменты появлялись в ответ на потребности бизнеса.

Введение


Задачи по работе с данными отделяют от бизнес- и других аналитических задач (BI, дата-сайенс, когнитивные решения и т. п.) с тех пор, как появились первые ИТ-системы и бизнес-приложения. Из-за высокой ресурсоемкости рабочие нагрузки по аналитической обработке данных приходится отделять от ИТ-систем, отвечающих за бизнес-операции, иначе они столкнутся со сбоями и нехваткой ресурсов, что приведет к неудобствам для пользователей, работающих с системой.
Читать дальше →
Всего голосов 25: ↑24 и ↓1 +23
Просмотры 3.5K
Комментарии 6

Как запускать SQL в Go с максимальным комфортом

Блог компании VK PostgreSQL *SQL *Go *
Tutorial

Писать SQL руками или использовать ORM — тема очень спорная, и я опишу, как использовать первый подход максимально эффективно. А какой из подходов выбрать, думаю, каждый сам для себя уже решил.

Читать далее
Всего голосов 47: ↑45 и ↓2 +43
Просмотры 7.9K
Комментарии 9

Подводные камни Spark: что делать с перезаписью и дополнением в таблицах

Блог компании VK Администрирование баз данных *Big Data *Хранение данных *Хранилища данных *


Таблицы — это фундаментальная часть заданий Spark, и при изучении документации кажется, что работать с ними нетрудно. На самом же деле опасности поджидают на каждом повороте. Команда VK Cloud перевела статью о том, с какими трудностями вы можете столкнуться и как их преодолеть.
Читать дальше →
Всего голосов 16: ↑16 и ↓0 +16
Просмотры 936
Комментарии 0

Создаем сложные интерфейсы и спецэффекты на базе Qt. Часть I

Блог компании VK C++ *Qt *

Привет, Хабр! Меня зовут Михаил Полукаров, я занимаюсь разработкой desktop-версии в команде VK Teams. Каждый день нашим мессенджером пользуются миллионы людей, поэтому мы уделяем особое внимание интерфейсу пользователя. Он должен быть не только функциональным и отзывчивым, но ещё и привлекательным с эстетической точки зрения. Для создания графических интерфейсов мы используем Qt Framework, и уже накопили много опыта в решении нетривиальных задач с помощью этого инструмента. Настолько много, что статью пришлось разделить на две части. 

Под катом мы пройдём путь от создания отдельных компонентов-примеров, экспериментов с маскированием, прозрачностью, размытием и перекрывающимися компонентами до разработки небольшого демонстрационного приложения, объединяющего все полученные ранее решения.
Читать дальше →
Всего голосов 47: ↑46 и ↓1 +45
Просмотры 7K
Комментарии 6

Цветные функции: ищем плохие архитектурные паттерны

Блог компании VK Open source *PHP *Программирование *Совершенный код *

Когда у языка нет цветовой дифференциации функций… то у языка нет цели?

Я уже много лет занимаюсь компиляторами и языками в целом. Хочу поделиться интересной мыслью, которая когда-то пришла мне в голову. Почему-то такого я нигде не видел.

Если немного расширить понятие функции (ввести атрибут «цвет»), можно описывать паттерны вида «вызывать логгер из performance-critical мест — это плохо» или «ходить в базу при рендеринге шаблонов запрещено».

Идея абсолютно не зависит от языка и применима к любому: хоть JS, хоть Go. Разберу её подробно в статье, и это будет интересно больше с теоретической точки зрения. Хотя мы даже сделали практическую реализацию для PHP, чтобы использовать у себя. Ссылки на GitHub и видео приложу в конце, а пока обо всём по порядку.

Читать далее
Всего голосов 54: ↑54 и ↓0 +54
Просмотры 12K
Комментарии 28

Что делать со сбоями в подах: практическое руководство с примерами конфигураций

Блог компании VK DevOps *Kubernetes *
Перевод


Команда VK Cloud перевела статью о том, почему возникают сбои в кластерах Kubernetes и как с ними бороться.

Осознанные прерывания и непреднамеренные сбои


Поды исчезают по причинам двух категорий: если возникает неустранимая ошибка аппаратного обеспечения или системы либо если их уничтожает человек или контроллер. Первую категорию необратимых ситуаций мы называем непреднамеренными сбоями приложения. Например:

  • происходит сбой оборудования, на котором размещен узел;
  • администратор кластера по ошибке удаляет (экземпляр) виртуальную машину;
  • ВМ исчезает из-за сбоя в работе гипервизора или облачного провайдера;
  • возникает критическая ошибка ядра;
  • узел исчезает из кластера из-за сетевого раздела кластера;
  • происходит выселение пода с ноды из-за отсутствия ресурсов на ней или превышения лимитов.

Примечание: Большинство этих событий неспецифичны для Kubernetes и должны быть знакомы пользователю, за исключением проблемы с отсутствием ресурсов на ноде.
Читать дальше →
Всего голосов 18: ↑17 и ↓1 +16
Просмотры 2.3K
Комментарии 1

От Web до Desktop за 2 недели: технология Electron на практике

Блог компании VK JavaScript *Разработка под MacOS *Разработка под Linux *Разработка под Windows *

Если у вас есть компьютер и вы используете его по назначению, то скорее всего вы так или иначе работали с приложениями на Electron (даже если об этом не знали).

Меня зовут Сергей Володин, я руковожу командой разработки VK WorkMail. В этой статье я расскажу, как на основе Electron мы за две недели создали PoC кроссплатформенного настольного приложения Почты, что узнали о технологии и к каким выводам пришли.

Читать далее
Всего голосов 34: ↑30 и ↓4 +26
Просмотры 5.6K
Комментарии 31

Как следить за кластером Kubernetes: 6 главных метрик, на которые нужно обращать внимание

Блог компании VK DevOps *Kubernetes *
Перевод


Загвоздка с Kubernetes в том, что это не единая система, как, например, Redis RabbitMQ или PostgreSQL, а комбинация нескольких компонентов Control Plane: etcd, API-сервера и других. С помощью виртуальных машин или серверов они помогают контролировать пользовательские нагрузки, и от всех поступают огромные потоки метрик, в которых очень легко запутаться. 

Команда VK Cloud перевела статью о том, на какие именно метрики стоит обращать внимание в первую очередь, чтобы грамотно мониторить рабочие нагрузки и поддерживать кластеры в исправном состоянии.
Читать дальше →
Всего голосов 16: ↑16 и ↓0 +16
Просмотры 7.3K
Комментарии 0

Everything Bagel, часть II: версионные таблицы озера данных в lakeFS и Trino

Блог компании VK Big Data *Хранилища данных *DevOps *Kubernetes *
Перевод


Команда VK Cloud уже переводила статью о том, как развернуть локальный стек данных с помощью инструмента Everything Bagel. Теперь переводим вторую часть, в которой на практике разбираем, как выполнять запросы к разветвленным данным lakeFS через механизм распределенных запросов Trino.
Читать дальше →
Всего голосов 23: ↑23 и ↓0 +23
Просмотры 621
Комментарии 0

Как базы данных «ключ-значение» обеспечивают производительность и масштабируемость без границ

Блог компании VK Администрирование баз данных *Big Data *Хранение данных *
Перевод


Команда VK Cloud перевела статью о базах «ключ-значение». Вы узнаете, в чем их преимущества перед другими БД, какие базы работают по этому принципу и чем они отличаются между собой.

В чем суть баз «ключ-значение»


Суть проста — объекты в них хранятся и извлекаются с помощью ключа. Так мы прощаемся с:

  • таблицами, столбцами и вводом ant data — всем, что можно так или иначе назвать blob-объектом;
  • отношениями между объектами;
  • сложными операциями.

Что же мы получаем взамен, когда отбрасываем все это?
Читать дальше →
Всего голосов 30: ↑29 и ↓1 +28
Просмотры 9.5K
Комментарии 11

Информация

Дата основания
Местоположение
Россия
Сайт
vk.com
Численность
5 001–10 000 человек
Дата регистрации
Представитель
Анастасия Гутор