Ответ
Количество API в микросервисной архитектуре определяется количеством и ответственностью отдельных сервисов. Каждый сервис, как правило, предоставляет свой собственный API для взаимодействия.
Ключевые моменты:
- Один сервис — один API: Каждый микросервис инкапсулирует свою бизнес-логику и предоставляет к ней доступ через свой API (REST, gRPC, GraphQL).
- Типы API: Различают внутренние API (для межсервисной коммуникации) и внешние API (публичные, для клиентов или фронтенда).
- Пример: Система с сервисами
User,Order,Paymentбудет иметь как минимум три отдельных API.
Практический пример REST API для сервиса пользователей (Spring Boot):
@RestController
@RequestMapping("/api/users")
public class UserController {
@GetMapping("/{id}")
public ResponseEntity<User> getUser(@PathVariable Long id) {
User user = userService.findById(id);
return ResponseEntity.ok(user);
}
}
Фактическое число конечных точек (endpoints) внутри каждого API зависит от функциональности сервиса.