0%
Comunicação entre microsserviços

Comunicação entre microsserviços

As diferentes estratégias de comunicação

10-15 min

Comunicação entre microsserviços

Neste capítulo, vamos explorar as diferentes estratégias de comunicação entre microsserviços. Veremos como implementar e utilizar cada abordagem com o Spring Cloud.

1. Comunicação REST com OpenFeign

Configuração

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

Implementação

@FeignClient(name = "order-service", url = "${order.service.url}")
public interface OrderClient {
    @GetMapping("/api/orders/{id}")
    OrderDTO getOrder(@PathVariable("id") Long id);
    
    @PostMapping("/api/orders")
    OrderDTO createOrder(@RequestBody CreateOrderRequest request);
}

Utilização

@Service
@RequiredArgsConstructor
public class OrderService {
    private final OrderClient orderClient;
    
    public OrderDTO getOrderDetails(Long orderId) {
        return orderClient.getOrder(orderId);
    }
}

2. Mensageria com RabbitMQ

Configuração

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-amqp</artifactId>
</dependency>

Comentários

Os comentários são alimentados pelo GitHub Discussions

Conecte-se com o GitHub para participar da discussão

Link copiado!