Ответ
Да, разрабатывал и разворачивал микросервис для управления заказами на Spring Boot.
Стек технологий:
- Бэкенд: Spring Boot, Spring Web (REST), Spring Data JPA, Spring Security.
- База данных: PostgreSQL.
- Деплой: Docker, AWS EC2.
- Инфраструктура: Nginx (reverse proxy, SSL), GitHub Actions (CI/CD).
Пример ключевого REST-эндпоинта:
@RestController
@RequestMapping("/api/orders")
@RequiredArgsConstructor // Lombok для инъекции зависимости
public class OrderController {
private final OrderService orderService;
@PostMapping
@ResponseStatus(HttpStatus.CREATED)
public OrderDto createOrder(@Valid @RequestBody CreateOrderRequest request) {
return orderService.create(request);
}
@GetMapping("/{id}")
public OrderDto getOrder(@PathVariable Long id) {
return orderService.findById(id);
}
}
Конвейер развертывания (CI/CD):
- Пуш в ветку
main→ запуск GitHub Actions. - Сборка JAR-файла (Maven) и Docker-образа.
- Пуш образа в Docker Hub/Amazon ECR.
- SSH-подключение к EC2, обновление контейнера через
docker-compose pull && docker-compose up -d.
Итог: Полный цикл от кода до работающего в облаке сервиса с автоматическим деплоем.