0%
التواصل بين الخدمات المصغّرة

التواصل بين الخدمات المصغّرة

استراتيجيات التواصل المختلفة

10-15 دقيقة

التواصل بين الخدمات المصغّرة

في هذا الفصل، سنستكشف استراتيجيات التواصل المختلفة بين الخدمات المصغّرة (microservices). وسنرى كيف نطبّق كل نهج ونستخدمه مع Spring Cloud.

1. التواصل عبر REST باستخدام OpenFeign

الإعداد

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

التنفيذ

@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);
}

الاستخدام

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

2. المراسلة باستخدام RabbitMQ

الإعداد

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

التعليقات

التعليقات مدعومة عبر GitHub Discussions

سجّل الدخول باستخدام GitHub للمشاركة في النقاش

تم نسخ الرابط!