Продолжительность
1 ч 45 мин 0 сек
Количество уроков
26 Видео
Дата добавления
26.01.2018
Дата обновления
26.01.2018
Microsoft Orleans, виртуальная платформа, разработанная Microsoft Research, идеально подходит для построения распределенных высокопроизводительных систем с C #.
Поскольку мир становится более связанным, и мы начинаем активировать все больше и больше устройств в Интернете, мы, как разработчики, должны создавать системы, которые могут обрабатывать более высокую пропускную способность, реагировать практически в реальном времени с высокой доступностью и достигать этого с помощью масштабируемости и с Cloud. Это сложные проблемы, и многие традиционные трехуровневые подходы к архитектуре, как правило, подведут нас. В качестве иллюстрации предположим что у нас есть сотни тысяч устройств, с которых мы собираем данные телеметрии. Устройства передают данные через HTTP, AMQP или аналогичный протокол. Данные были получены нашим веб-сервером. Перечисление состояния позволяет нам масштабироваться горизонтально и добавлять больше машин для обработки большего количества запросов, но в конечном итоге состояние должно быть где-то сохранено. Традиционно мы использовали реляционную базу данных SQL Server для хранения нашего состояния. Однако это дает нам проблему с задержкой, так как вам возможно придется загружать данные с диска, что может занять немного времени, но главная проблема здесь заключается в том, что вы ввели узкое место масштабируемости. До сих пор мы можем развивать систему с точки зрения запросов в секунду, прежде чем мы достигнем предела того, что может произвести сервер SQL. Есть способы обойти это, и они обычно приводят к разделению системы на более мелкие кусочки. Базы данных и патенты NoSQL, такие как сегрегация ответственности запросов команд CQRS, могут позволить вам создавать более крупные системы, которые могут обрабатывать более высокую пропускную способность и работать на нескольких машинах. Теперь они идут с компромиссом возможной последовательности. Возможная последовательность может быть в порядке для некоторых сценариев, таких как обновления в социальных сетях, но не для принятия решений о быстрой жизни и смерти.
Что такое Орлеан?
Microsoft Orleans дает ответы на многие из этих проблем, принимая сложность построения высокопроизводительной системы и выпекая ее в рамки, чтобы упростить работу разработчика. Но что такое Орлеан? Orleans - это основа для создания программного обеспечения, которое работает на нескольких машинах таким образом, что машины взаимодействуют и действуют как один большой компьютер. Мы называем это распределенной системой.