Примеры проектов Orleans
Hello, World!
Приложение Hello, World! , которое демонстрирует создание и использование ваших первых граней.
Что демонстрирует
- Как приступить к работе с Orleans
- Определение и реализация детализированного интерфейса
- Как получить ссылку на детализацию и вызвать детализацию
Adventure
Прежде чем приступить к графическим пользовательским интерфейсам, до эры игровых консолей и игр с огромным участием в нем были установлены терминалы VT100 и колоссальных пещере Adventure, Зорки Microsoft Adventure. Возможно, предосудительного на сегодняшний день, а затем — Magical мир монстров, чирпинг птиц, а также все, что можно было бы выбрать. Это именно то, что в этом примере.
Что демонстрирует
- Как структурировать приложение (в нашем примере — игру) с помощью граней
- Подключение внешнего клиента к кластеру Orleans (
ClientBuilder
)
чирпер
Система публикации и подсети социальных сетей с короткими текстовыми сообщениями, отправляемыми между пользователями. Издатели отправляют короткие сообщения «Чирп» (не путать с «твитами»по различным юридическим причинам) любым другим пользователям.
Что демонстрирует
- Как создать упрощенное приложение для социальных сетей и социальных сетей с помощью Orleans
- Хранение состояния в режиме детализации с помощью сохраняемости (
IPersistentState<T>
) - Грани, реализующие несколько граней интерфейсов
- Повторные изменения, позволяющие параллельно выполнять несколько одновременных вызовов в однопотоковом режиме
- Использование наблюдателя граней () для получения Push-
IGrainObserver
уведомлений от граней
Средство записи GPS
Служба для отслеживания устройств Интернета вещей , оснащенных GPS, на карте. Расположения устройств обновляются практически в реальном времени с помощью SignalR, поэтому в этом примере демонстрируется один из подходов к интеграции Orleans с SignalR. Обновления устройства берутся из шлюза устройств, который реализуется с помощью отдельного процесса, который подключается к основной службе и имитирует несколько устройств, перемещаемых в псевдослучайноее вокруг области в Сан-Франциско.
Что демонстрирует
- Как использовать Orleans для создания приложения Интернет вещей
- как Orleans можно разместить в совместном размещении и интегрировать с ASP.NET Core signalr
- Как транслировать обновления в режиме реального времени на множество клиентов, использующих Orleans и SignalR
ханбаобао
Веб-приложение English-Mandarin Dictionary, демонстрирующие развертывание в Kubernetes, вызовах граней и регулирования запросов.
Что демонстрирует
- Создание реалистичного приложения с помощью Orleans
- Развертывание приложения на основе Orleans в Kubernetes
- как интегрировать Orleans с ASP.NET Core и одностраничное приложение JavaScript framework (Vue.js)
- Как реализовать регулирование запросов в сегменте утечки
- Загрузка и запрос данных из базы данных
- Кэширование результатов с отложенной и временной причастотой
- Как разбираются запросы к различным граням и собирайте результаты
Служба присутствия
Служба присутствия в играх, аналогичная одной из служб на основе Orleans, созданных для Halo. Служба присутствия отслеживает проигрыватели и игровые сеансы практически в реальном времени.
Что демонстрирует
- Упрощенная версия реального использования Orleans
- Использование наблюдателя граней () для получения Push-
IGrainObserver
уведомлений от граней
Крестикиный нолики
крестикиная игра на основе веб-игр с использованием ASP.NET MVC, JavaScript и Orleans.
Что демонстрирует
- Создание Интернет-игры с помощью Orleans
- Создание базовой основной системы игры
- как получить доступ к граням Orleans из приложения ASP.NET Core MVC
Voting
Веб-приложение для голосования по набору вариантов. В этом примере демонстрируется развертывание в Kubernetes. приложение использует универсальный узел .net для совместного размещения ASP.NET Core и Orleans, а также панель мониторинга Orleans вместе в одном процессе.
Что демонстрирует
- Развертывание приложения на основе Orleans в Kubernetes
- Настройка панели мониторинга Orleans
Комната чата
приложение для разговора на основе терминала, созданное с помощью Orleans Потоки.
Что демонстрирует
- Создание приложения для разговора с помощью Orleans
- использование Orleans Потоки
Банковский счет
Имитирует банковские учетные записи, используя транзакции ACID для перемещения случайных сумм между набором учетных записей.
Что демонстрирует
- Как использовать транзакции Orleans для безопасного выполнения операций с несколькими детализациями с отслеживанием состояния с помощью гарантий ACID и изоляции Serializable.
Блазор Server и блазор
Эти два примера Блазор основаны на вводных учебных курсах блазор, адаптированных для использования с Orleans. В примере блазор для сборки используется модель размещения блазор. В примере сервера блазор используется модель размещения сервера блазор. Они включают в себя интерактивный счетчик, список дел и службу погоды.
Что демонстрирует
- интеграция ASP.NET Core блазор Server с Orleans
- как интегрировать ASP.NET Core блазор (васм) с Orleans
Акции
Приложение с ценой акций, которое извлекает цены из удаленной службы с помощью вызова HTTP и временно кэширует цены. BackgroundService периодически опрашивается на предмет обновленных цен на акции из различных StockGrain
граней, соответствующих набору символов акций.
Что демонстрирует
- Использование Orleans в BackgroundService.
- Использование таймеров в рамках детализации
- Как выполнять вызовы внешней службы с помощью.
HttpClient
Net и кэширования результатов в определенном Гране.
Протокол TLS
Приложение Hello, World!, настроенное на использование взаимной защиты транспортного уровня для защиты сетевого взаимодействия между каждым сервером.
Что демонстрирует
- Настройка проверки подлинности взаимного TLS (mTLS) для Orleans
Visual Basic Hello World
Приложение Hello, World!, использующее Visual Basic.
Что демонстрирует
- Разработка приложений на основе Orleans с помощью Visual Basic
Hello World F #
Приложение Hello, World!, использующее F #.
Что демонстрирует
- Разработка приложений на основе Orleans с помощью F #
потоковая передача: публикация и подПотоки через концентраторы событий Azure
приложение, использующее Orleans Потоки с концентраторами событий Azure в качестве поставщика и неявными подписчиками.
Что демонстрирует
- использование Orleans Потоки
- Использование
[ImplicitStreamSubscription(namespace)]
атрибута для неявной подписки на детализацию в потоке с соответствующим идентификатором - настройка Потоки Orleans для использования с концентраторами событий Azure
Потоковая передача: Пользовательский адаптер данных
приложение, использующее Orleans Потоки с издателем, отличным от Orleans, помещает в поток, который потребляется с помощью пользовательского адаптера данных , который сообщает Orleans о том, как интерпретировать потоковые сообщения.
Что демонстрирует
- использование Orleans Потоки
- Использование
[ImplicitStreamSubscription(namespace)]
атрибута для неявной подписки на детализацию в потоке с соответствующим идентификатором - настройка Потоки Orleans для использования с концентраторами событий Azure
- Как использовать потоковые сообщения, опубликованные издателями, не являющимися Orleans, путем предоставления пользовательской
EventHubDataAdapter
реализации (пользовательского адаптера данных)
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по