Estes tipos de preocupações operacionais são da responsabilidade da camada de aplicação e, como tal, são agnósticos do DDD. A camada de aplicação delega na camada de domínio que pode ser implementada usando DDD. É atípico para um serviço de domínio criar segmentos de trabalho e lidar com o status de processamento. Em vez disso, ele deve ser focado na implementação de lógica de domínio que não pertença naturalmente a um objeto de agregação, entidade ou valor. O gerenciamento de encadeamentos e o status de processamento devem ser tratados pela camada de aplicativos, pois é uma preocupação operacional, não uma preocupação de domínio. Existem várias maneiras de implementar processos de execução longa com informações de progresso. O uso de threads em um AppDomain é apenas um caminho a ser seguido. Por exemplo, se a tolerância a falhas e a distribuição forem necessárias, é melhor colocar itens de trabalho em uma fila durável e ter um manipulador de mensagens que processe essas mensagens, delegando à camada de domínio. Essa implementação é descrita em Request / Acknowledge / Poll Com ASP.NET WebAPI e NServiceBus . Independentemente da implementação dessa responsabilidade da camada de aplicativos, o domínio permanece o mesmo.