# 마이크로서비스 아키텍처 (.NET) > 서비스 분해, API gateway, service discovery, 분산 트랜잭션, 복원력 패턴, Kubernetes 기초(deployments, services, config) - 25 면접 질문 - Senior - [면접 질문: .NET](https://sharpskill.dev/ko/technologies/dotnet/interview-questions.md) ## 1. 마이크로서비스에 적용된 Domain-Driven Design의 Bounded Context 패턴이란 무엇입니까? **답변** Bounded Context는 자체적인 유비쿼터스 언어와 데이터베이스를 가진 도메인 모델 주위에 명시적인 경계를 정의합니다. 마이크로서비스 아키텍처에서 각 Bounded Context는 일반적으로 독립적인 분산 마이크로서비스가 됩니다. 이는 데이터 자율성을 보장하고 서비스 간 모델 공유를 방지합니다. 예를 들어 Profile 컨텍스트의 User 엔티티는 Ordering 컨텍스트의 Buyer 엔티티와 ID를 공유할 수 있지만, 각자 고유한 속성과 비즈니스 로직을 가진 별개의 모델로 남아 있습니다. ## 2. 마이크로서비스 아키텍처에서 API Gateway의 주요 역할은 무엇입니까? **답변** API Gateway는 마이크로서비스 그룹의 단일 진입점 역할을 하며, 클라이언트 요청을 적절한 서비스로 라우팅하는 reverse proxy로 작동합니다. Backend for Frontend(BFF) 패턴을 구현하고 인증, SSL 종료, 캐싱, 응답 집계와 같은 횡단 관심사를 처리합니다. 이는 여러 직접 호출을 피하고 라우팅 로직을 중앙화하여 client-to-microservice 통신을 단순화합니다. ## 3. Docker Compose에서 service discovery는 어떻게 작동합니까? **답변** Docker Compose는 service discovery에 내부 DNS를 사용합니다. docker-compose.yml에 정의된 각 서비스는 서비스 이름을 호스트 이름으로 사용하여 접근할 수 있습니다. 예를 들어 Redis 서비스의 이름이 'basketdata'인 경우 다른 서비스는 ConnectionString=basketdata를 통해 연결할 수 있습니다. Docker는 이 이름을 공유 Docker 네트워크상의 컨테이너 내부 IP 주소로 자동으로 해석하여 IP 주소를 하드코딩할 필요가 없도록 합니다. ## 22개 추가 질문 이용 가능 - .NET에서 Polly를 사용한 Circuit Breaker 패턴의 원리는 무엇입니까? - .NET에서 HttpClient용으로 Polly를 사용한 retry 정책을 구성하는 방법은? 무료로 가입하기: https://sharpskill.dev/ko/login ## 기타 .NET 면접 주제 - [C# 기초](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/csharp-basics.md): 25개 질문, Junior - [LINQ & Delegates](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/csharp-linq-delegates.md): 20개 질문, Junior - [C# 언어 핵심 요소](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/csharp-language-essentials.md): 15개 질문, Junior - [ASP.NET Core 기초](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/aspnet-core-fundamentals.md): 18개 질문, Junior - [ASP.NET Core 요청 수명 주기](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/aspnet-core-request-lifecycle.md): 20개 질문, Junior - [Configuration & Settings](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/configuration-settings.md): 20개 질문, Junior - [애플리케이션 라이프사이클](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/application-lifecycle.md): 20개 질문, Junior - [Dependency Injection](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/dependency-injection.md): 24개 질문, Mid-Level - [Entity Framework Core](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/entity-framework-core.md): 25개 질문, Mid-Level - [Minimal APIs](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/minimal-apis.md): 18개 질문, Mid-Level - [Web API 개발](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/web-api-development.md): 22개 질문, Mid-Level - [ASP.NET Core의 Async](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/async-aspnet-core.md): 20개 질문, Mid-Level - [Authentication & Authorization](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/authentication-authorization.md): 18개 질문, Mid-Level - [HttpClient & 네트워킹](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/httpclient-networking.md): 20개 질문, Mid-Level - [JSON 직렬화](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/json-serialization.md): 20개 질문, Mid-Level - [Entity Framework Core 고급](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/ef-core-advanced.md): 25개 질문, Mid-Level - [C# 고급 기능](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/csharp-advanced-features.md): 20개 질문, Mid-Level - [Clean Architecture](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/clean-architecture.md): 20개 질문, Mid-Level - [Logging, Monitoring & Observability](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/logging-monitoring.md): 22개 질문, Mid-Level - [단위 테스트와 xUnit](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/unit-testing-xunit.md): 20개 질문, Mid-Level - [통합 테스트](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/integration-testing.md): 18개 질문, Mid-Level - [Docker & Containerization](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/docker-containerization.md): 16개 질문, Mid-Level - [NuGet 패키지 관리](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/nuget-package-management.md): 16개 질문, Mid-Level - [Memory Management & GC](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/memory-management-gc.md): 22개 질문, Senior - [리액티브 프로그래밍](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/reactive-programming.md): 24개 질문, Senior - [Async/await 및 패턴](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/async-await-patterns.md): 26개 질문, Senior - [.NET 디자인 패턴](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/dotnet-design-patterns.md): 24개 질문, Senior - [성능 최적화](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/performance-optimization.md): 22개 질문, Senior - [보안 및 모범 사례](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/security-best-practices.md): 24개 질문, Senior - [SignalR 및 실시간](https://sharpskill.dev/ko/technologies/dotnet/interview-questions/signalr-realtime.md): 22개 질문, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/ko/technologies/dotnet/interview-questions/microservices-architecture