Microsoft намерена открыть коды своего фреймворка Orleans, предназначенного для создания масштабируемых высоконагрузочных приложений и сервисов, функционирующих в облачной среде Windows Azure и реализованных на основе технологической платформы .NET. Программный код будет доступен под лицензией MIT (разработана Массачусетским технологическим институтом, совместима с GPL) и опубликован на сайте GitHub в начале 2015 г. (ранее компания использовала свой собственный сайт CodePlex для публикации открытых кодов). Об этих планах в блоге проекта Orleans сообщил его руководитель, глава направления софтверной разработки eXtreme Computing Group подразделения Microsoft Research Сергей Быков, выпускник МГТУ имени Баумана 1995 г.

В своей исходной начальной идее фреймворк Orleans задумывался как облачная среда разработки и исполнения высоконагрузочных онлайновых игр. Впервые публичная информация о реализации проекта (без упоминания его названия) появилась осенью прошлого года, когда Microsoft продемонстрировала облачный вариант популярной игры Halo 4, доступной ранее только на игровых консолях ХBox, который можно было запускать в среде Windows и Windows Phone на обычных ПК и смартфонах.

Официально о проекте Orleans было впервые рассказано в начале апреля на конференции Microsoft Build 2014, где была представлена его публичная предварительная версия, а разработчики Halo 4 из компании 343 Industries рассказали о том, как создавали с помощью фреймворка облачные сервисы своей игры. Тогда же стало известно, что реализацией проекта в рамках общего направления Cloud Computing Futures (будущее облачных вычислений) занимается группа «экстремальных вычислений» исследовательского подразделения Microsoft, а руководит разработкой Сергей Быков, который работает в корпорации с 2001 г.

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

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

Версия для печати