التواصل بين الخدمات المصغّرة
استراتيجيات التواصل المختلفة
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 للمشاركة في النقاش