Boa noite.
Preciso usar cache em um método específico, onde vou buscar alguns dados que não atualizam sempre. Sei que a classe que implementa a lógica do cache vai ficar em infra, mas minha dúvida está relacionado onde exatamente usar, Dentro do Repositorio, dentro da camada de serviço no domínio, na camada de aplicação, tanto faz?!?!.
Caramba, tantos itens que depois vai ser difícil saber onde está cada coisa. Do que você falou, o mais indicado seria o Repositório, se tiver ligado a uma entidade, senao seria o Service. Mas DDD aborda uma penca de itens, dá uma lida geral pois DDD é um assunto extremamente complexo.
http://caiocarrara.com.br/regras-de-negocio-usando-domain-driven-design.html
Valeu, vou dar uma lida e ver se encontro o mais ideal
Cara, eu vejo 2 possibilidades:
- se o código que vai acessar o cache está em um serviço de aplicação, eu penso que faz sentido você acessar o cache diretamente, como um serviço de infra-estrutura
- por outro lado, se você vai acessar o cache a partir de um serviço do domínio, eu simplesmente trocaria a implementação do repositório por uma implementação cacheada. Ou seja, o serviço do domínio utilizaria somente a interface do repositório e eu aplicaria injeção de dependência para configurar uma implementação do repositório que usa cache.
abs.