Результати пошуку за запитом: видеокурс c*
Структури даних
Автор: Бондаренко Кирило
Познайомитись з ускладненими варіаціями комбінацій структур даних, розглянете зміст їх застосування та тонкощі роботи з ними. Також буде розглянуто так звані comprehensions. Після цього уроку ви зможете працювати зі складними структурами даних та використовувати comprehensions у ваших завданнях.
Flex box и Grid
Автор: Сластен Максим
Цель урока - познакомиться c разными вариантами использования свойств flex и grid. Рассмотреть примеры преобразования флекс блоков в грид.
Распределенный отказоустойчивый сервис финансовых транзакций
Автор: HighLoad
В первой части конференции вы узнаете:
Как мы написали отказоустойчивый, распределенный и консистентный сервис на сто тысяч проводок в секунду.
Почему, согласно CAP-теореме, такой сервис не будет работать.
Как мы сумели разобраться с этим ограничением.
Про Test-Driven Development распределенной системы, или как численными методами строго доказать, что сервис будет работать нужным для нас образом.
Возможности применения используемых технологий при разработке криптовалют.
И тогда наверняка вдруг запляшут облака!
Автор: HighLoad
Обсудим, для реализации каких задач заказчики используют облачные платформы:
- Необходимость работать с часто меняющейся конфигурацией железа.
- Необходимость часто выделять сервера с разной конфигурацией.
- Предоставлять доступ к разнообразным сетевым приложениям.
- Разворачивать Telco Cloud (оно же NFV).
- Собирать и обрабатывать BigData.
От обзора облаков перейдем к рассмотрению практической задачи построения Telco Cloud. В рамках доклада затронем следующие темы:
- Проблемы, которые решают SDN и NFV.
- Где связь, а в чем разница между SDN и NFV.
- Обзор стандарта ETSI NFV.
- Существующие решения, реализующие концепцию ETSI NFV.
- И на вкусное - разворачиваем NFV своими руками!
В последнем разделе поговорим о приложениях, которые должны эффективно работать в облачной среде - о так называемых "Cloud Ready Applications". Какими характеристиками должны обладать приложения? Какие интерфейсы поддерживать? Рассмотрим основные требования:
- Независимость от инфраструктуры.
- Масштабирование (разделение данных и их обработки, асинхронное взаимодействие).
- Безопасность.
- Service Discovery.
- Configuration Management.
- Автоматизированная установка.
Выводы, которые можно будет сделать из доклада:
С помощью облаков можно решать различные задачи. Мы рассмотрели одну - построение TelcoCloud на основе стандарта NFV. Показали, что технологии SDN и NFV - это совершенно независимые технологии, но вместе они несут определенную синергию. В практической части убедились, что технология NFV достаточно зрелая для промышленного использования. Для эффективной работы в облаках запускаемые приложения должны быть "Cloud Ready".
Как мы делали многопользовательскую браузерную игру для HL++ с воксельной графикой
Автор: HighLoad
У компании Ingram Micro Cloud стенд на HL. На нем мы организуем браузерную игру TheURBN (urbn.odn.pw) с воксельной графикой, в которой каждый может захватывать территорию общего мира и строить небоскребы при помощи кубиков, а за процессом можно наблюдать на стенде. На экранах мы будем в режиме реального времени показывать виртуальный 3D-мир, в котором участники будут строить небоскребы. Большего погружения можно получить в шлеме VR Oculus Rift на нашем стенде.
А в докладе я расскажу, откуда взялась идея сделать такое, и что из этого получилось, как технически устроена игра: от картинки в браузере до архитектуры, базы данных и хостинга всего проекта. Вы узнаете, как это - сделать браузерную 3D-игру в 2017 году, какие трудности вас будут подстерегать, и при чем тут VR.
Доклад раскроет технические детали того, как устроена игра, что используется из веб-технологий, как хранятся данные, какую нагрузку пользователей выдерживает, где размещается.
Масштабирование сети VR-аттракционов CinemaVR
Автор: HighLoad
Сеть была запущена 1-го января с 10 локациями, в августе локаций было 25, к концу года будет 80.
На каждой локации 4-8 игровых машин и локальный сервер (итого: флот в сотню машин), которыми нужно управлять: контролировать, что конфигурация операционной системы соответствует целевой; что игровой контент и сопряженные сервисы скопированы и настроены; мониторить загрузку, статус работы, нетиповые события; собирать бизнес-события и синхронизировать данные, которые должны быть общими во всей сети.
И все эти задачи нужно решать в условиях плохой соединенности локаций с интернетом (нормальным бывает пинг в 1.5 секунды и потери пакетов до 80% или полное отсутствие интернета на 10-20 часов).
В ходе развития платформы мы выработали решения, которые позволяют предсказуемо контролировать сеть локаций, несмотря на плохой интернет. В этом докладе я расскажу об основных проблемах, которые мы встретили и решили.
Хочу всё сжать
Автор: HighLoad
Ловко придумать схему сжатия для своих данных умеют не все, а очень зря. Иногда (иногда) при помощи этой магии удается добиться как бы невозможного: одновременно и сэкономить диск или память, и при этом ускорить код.
Как работает магия сжатия в целом? Как она работает более конкретно в очень разных продуктах: ""просто базах"" типа MySQL или Mongo; в поисковиках типа Lucene или Sphinx (или даже веб-поисках); в колоночных хранилищах типа Vertica или Clickhouse; в конце концов, внутри апдейтов Chrome? Обсудим это, пробежимся по всем важным ключевым словам от замшелых Huffman до моднейших Snappy - и, важнее, по ещё паре десятков других ключевых слов. Подробно разберем несколько особо интересных методов и трюков про сжатие и прочую перепаковку данных. Посмотрим пример на 100 строк кода со сжатием в 6 раз и одновременным ускорением работы в 5 раз (читерством, конечно), причем успешно написанный не специально обученным монстром, а совершенно обычными разработчиками. Посмотрим на скорость разных готовых кодеков, попытаемся понять, когда какой можно применять, а где нельзя.
Бонус-трек в коридоре, если кому интересно, как устроено внутри сжатие картинок, видео и прочего такого. Условно прикинем на пальцах, как написать свой простенький игрушечный JPEG-декодер в сотню-другую строк; можно на JavaScript или Python. Или не JPEG!
Опыт разработки модуля межсетевого экранирования для MySQL
Автор: HighLoad
Расскажем о нашем опыте разработки модуля межсетевого экрана для MySQL с использованием генератора парсеров ANTLR и языка Kotlin.
Подробно рассмотрим следующие вопросы:
— когда и почему целесообразно использовать ANTLR;
— особенности разработки ANTLR-грамматики для MySQL;
— сравнение производительности рантаймов для ANTLR в рамках задачи синтаксического анализа MySQL (C#, Java, Kotlin, Go, Python, PyPy, C++);
— вспомогательные DSL;
— микросервисная архитектура модуля экранирования SQL;
— полученные результаты.
Пишем свой протокол поверх UDP или платформа потокового видео с нуля на миллион онлайнов
Автор: HighLoad
Пишем свой протокол стриминга с гарантированной задержкой поверх UDP. Архитектура отказоустойчивого стриминг-сервиса, способного выдержать потерю дата-центра и миллион онлайнов. Проблемы мобильного стриминга и TCP-протокола, QUIC как замена TCP, UDP и fast retransmit, forward error correction (FEC), задержка или потеря пакетов, приоритезация потоков, шифрование и многое другое.
Сервис Видео в Одноклассниках – вторая площадка в Рунете по просмотрам видео, ежедневно мы фиксируем свыше 400 миллионов просмотров видео.
Технический прогресс позволил пользователям вести трансляции со своих смартфонов и интерактивно общаться с пользователями в прямом эфире – появились такие мобильные приложения, как Periscope, Insta Live и стриминговое приложение Одноклассников OK Live.
Новый способ генерации контента предложил нам новые технологические вызовы:
* гарантировать задержку между стримером и зрителями на динамично меняющемся мобильном Интернет-канале;
* обеспечить непрерывный стриминг даже при потере части оборудования;
* сбалансировать нагрузку на раздающие сервера во время популярных, например, спортивных трансляций.
Мы поделимся опытом построения масштабируемого отказоустойчивого сервиса видеостриминга, расскажем про его архитектуру, которая выдерживает тысячи стримов online и миллионы зрителей.
В ходе доклада:
* отвечу на вопрос, как оптимизировать задержку трансляции до времени, сравнимого с p2p-видеоконференцией;
* расскажу про протоколы hls, dash, rtmp, webrtc;
* настройка кодеков на клиенте и транскодере для минимизации задержки;
* расскажу о проблемах гарантии задержки на TCP и тем, как мы пришли к собственному протоколу стриминга поверх UDP с гарантированной задержкой доставки видео зрителям;
* свой UDP-протокол: измерение MTU, pacer, шифрование с потерей пакетов, fast retransmite;
* простые способы FEC не работают и google в QUIC его отключили.
Результатом нашей работы стал запуск первого в мире приложение на Android, способного стримить в FullHD (1080p) в мобильных сетях.
Управление игроками и триггеры
Автор: Роман Самчук
В этом уроке мы будем реализовывать управление игроком и для этого использовать CharacterController. Также будет рассмотрена работа с методами OnTriggerEnter, OnTriggerStay, OnTriggerExit.