Приложение Service Fabric с Entity Framework? - PullRequest
0 голосов
/ 22 января 2019

Я начал изучать приложения Service Fabric и не очень задумывался о надежных сервисах с отслеживанием состояния.

В состоянии Stateful Reliable Services состояние означает, что данные должны храниться в таблицах в наших обычных приложениях базы данных или что-то еще?

Можно ли использовать EF с надежными службами с отслеживанием состояния?

Как мы можем хранить / извлекать данные в / из базы данных (например, «Продукты», «Категории», «Сотрудники» и т. Д.), Используя EF в «Надежных службах»?

Любой учебник / помощь будут очень заметны.

Заранее спасибо

1 Ответ

0 голосов
/ 22 января 2019

Существует 2 разновидности надежных услуг: без сохранения состояния и с сохранением состояния. Основное отличие состоит в том, что службы с сохранением состояния предоставляют доступ к надежным коллекциям для хранения ваших данных.

TL; DR

Если вы планируете использовать Entity Framework (EF), и у вас нет плана для хранения данных с использованием надежных коллекций, используйте службы без сохранения состояния.

Q1

В состоянии Stateful Reliable Services состояние означает, что данные должны храниться в таблицах в наших обычных приложениях базы данных или что-то еще?

Это означает, что вы планируете хранить данные в надежных коллекциях.

Q2

Можно ли использовать EF с надежными службами с отслеживанием состояния?

Да, даже когда вы используете сервис с отслеживанием состояния, вы можете написать логику для хранения данных в EF и при необходимости хранить данные в надежных коллекциях (см. Пример использования, представленный Олегом в комментариях, например), но если вы хотите использовать только EF тогда пойти на службу без гражданства. Служба с сохранением состояния имеет смысл, только если вы используете надежные коллекции.

Q3

Как мы можем хранить / извлекать данные в / из базы данных (например, «Продукты», «Категории», «Сотрудники» и т. Д.), Используя EF в «Надежных службах»?

Создайте службу без сохранения состояния, добавьте пакеты EF NuGet и напишите код, как обычно.

Дополнительная информация

С это быстрый старт

Служба без сохранения состояния - это тип службы, который в настоящее время является нормой в облачных приложениях. Он считается не сохраняющим состояния, поскольку сама служба не содержит данных, которые необходимо надежно хранить или сделать доступными. Если экземпляр службы без сохранения состояния отключается, все ее внутреннее состояние теряется. В этом типе службы состояние должно сохраняться во внешнем хранилище, таком как таблицы Azure или база данных SQL , для обеспечения высокой доступности и надежности.

и

Service Fabric представляет новый вид сервиса с отслеживанием состояния. Служба с отслеживанием состояния может надежно поддерживать состояние в самой службе, совмещенной с кодом, который ее использует. Service Fabric обеспечивает высокую доступность состояния без необходимости сохранения состояния во внешнем хранилище.

Надежный сбор данных лучше всего описать как хранилище данных No-Sql. Это зависит от вас, хотите ли вы использовать это или иметь сочетание служб с сохранением состояния и без сохранения состояния.

Для более глубокого обзора надежных коллекций прочитайте этот документ

...