Сервисы grp c, зарегистрированные через MapGrpcService, всегда являются временными? - PullRequest
1 голос
/ 30 января 2020

Мне было интересно, можно ли иметь службы grp c, которые я регистрирую в моем Asp. Net Базовом запуске, например

private void RegisterServices(IEndpointRouteBuilder endpointRouteBuilder)
{
    endpointRouteBuilder.MapGrpcService<Service.SessionService>();
}

, чтобы не генерироваться повторно для каждого запроса?

На данный момент я замечаю, что при каждом вызове GRP c новая служба запускается снова. Я бы ожидал, что есть возможность сохранить их в живых. Поведение по умолчанию затрудняет работу с состоянием в службе. На данный момент я вижу только две опции:

  1. У службы grp c переадресация вызовов на фактическую службу, которую служба grp c получит через структуру DI, которая фактически связывает Служба на срок службы одного экземпляра.

  2. Строго хранить службы без сохранения состояния и доставлять части с состоянием через DI.

Нет ли другого способа сделать сами услуги долговременны?

...