Чем занимается технический департамент VK
Технический департамент — один из самых больших в VK. Внутри него выполняется много разных задач, основная из которых — поддержание информационной безопасности на всех уровнях.
Мы взаимодействуем с продуктовыми командами, у нас вообще «продуктовая» эксплуатация. Внимательно следим за развитием и скиллами, охотно выступаем на конференциях, постоянно учимся 🤓
Наши коллеги работают с самыми разными устройствами, оборудованием и технологиями, поэтому описать деятельность нашей команды лучше всего получится на примере слоеного пирога.
1. Самый нижний слой — это дата-центры, которые мы сами строим и эксплуатируем. Они находятся у нас в Москве и в Санкт-Петербурге.
2. Следующий слой – это все инженерные коммуникации, стойки и элементы охлаждения, которые есть в центрах обработки данных. Мы делаем всё, чтобы сервера запускались без ошибок и стабильно работали.
3. Далее идёт новый слой – сетевая коммуникация. У нас огромная сеть, растянутая по всей России и за ее пределами. Есть несколько точек присутствия в Европе, в США, в Южной Америке.
4. Еще один слой – это наша сеть. Вся сетевая инфраструктура наша собственная. И все каналы, все необходимое железо, коммутаторы, маршрутизаторы, все сетевое оборудование тоже наше.
5. Далее начинается самый верхний слой, в котором мы уже «кладём» наш софт на сервера и делаем так, чтобы он начал без проблем отвечать и обслуживать клиентов.
Уникальные проекты и высокие нагрузки
Мы в VK всегда стараемся создавать и поддерживать уникальные проекты на рынке. И с точки зрения технологий, и с точки зрения пользователей и нагрузок. Мы постоянно оперируем проектом, который обслуживает 50 млн пользователей, и это невероятный масштаб и ответственность.
Рабочие нагрузки у нас уникальные по своим масштабам — как положительные, так и отрицательные. У нас много пользователей, много запросов, огромный трафик — всё это можно отнести к позитивным нагрузкам, которые нас как компанию не могут не радовать.
Каждый год мы запускаем новые проекты, строим дата-центры, чьи мощности только растут и растут, а также поддерживаем проекты, которые требуют больше трафика, больше серверов, внедряем и создаём новые технологии. Мы всегда стараемся идти на какой-то передовой истории.
Артём Ярцев:
Сейчас мы принимаем stateful инфраструктуру Дзена — будем первыми в компании массовыми пользователями ipv6, принимаем опыт эксплуатации YDB и YT. Развиваем активно растущий проект RuStore: принимаем сервис рассылки пуш-уведомлений с плановой нагрузкой в тысячи RPS, запускаем новые компоненты и налаживаем процессы взаимодействия между командами.
А что касается отрицательной нагрузки, то мы имеем в виду, что довольно часто боремся с интересными негативными сценариями. Например, такого объема DDoS, который мы получаем, на рынке, наверное, больше ни у кого нет. Мы сделали много работы для улучшения информационной безопасности продуктов — разработали собственный сервис анти-DDoS на уровне L7, каждый год проходим несколько аудитов, чтобы соответствовать международному стандарту PCI-DSS. Это всегда вызов для нас — сделать так, чтобы, несмотря на атаку, пользователи ничего не замечали.
Внутренние разработки и опенсорс
У нас есть большое количество внутренних разработок, которые мы используем вместо опенсорс-решений, потому что они зачастую не рассчитаны под наши высокие нагрузки. Поэтому, даже взяв что-то уже готовое на рынке, рано или поздно нам приходится дорабатывать эту систему до наших реалий.
И мы всегда открыты к тому, чтобы делиться собственными наработками с коммьюнити, стараемся загружать и обновлять готовый код на GitHub и других подобных ресурсах.
Особенно мы гордимся нашей разработкой Tarantool, которая родилась внутри как небольшое хранилище. Тогда нам было нужно место для постоянного локального кэша, а готовых мощных решений на рынке не было. Сейчас Tarantool существует и пользуется большой популярностью как опенсорс-проект, чему мы очень рады.
Если посмотреть на GitHub нашей компании, то у нас сейчас порядка 150 репозиториев, и их число постоянно растёт. Однажды коллеги столкнулись с низкой производительностью PHP, поэтому они сделали свой подход к PHP, который назвали kPHP. Он более высокопроизводительный и тоже лежит сейчас в опенсорсе. И если мы пишем какие-то серверные решения или какие-то библиотеки на JavaScript, то тоже выкладываем их в открытый доступ. В нашем департаменте, как нетрудно понять из статьи, есть все возможности для реализации любых технологических и творческих инициатив, поиска неочевидных решений, прокачки своих hard и soft skills, если вам интересна сфера высоких технологий и безопасности. А мы любим делиться знаниями не только между коллегами, но и со всем IT-коммьюнити 🙂