Devin.KR

작은 웹 서비스 실행과 접속 진단

제공된 Java 서비스를 띄우고 DNS·TCP·TLS·HTTP 순서로 접속 실패를 좁힙니다.

진도 0%

레슨

  1. 제공된 서비스 빌드와 실행

    Java 17·Spring Boot 3.1.x 시작 코드의 요청·테스트·실행 흐름을 읽습니다.

  2. 프로세스와 자원 상태

    프로세스·스레드·파일 핸들·메모리와 지속 데이터를 구분합니다.

  3. 이름에서 HTTP 응답까지

    DNS·IP·TCP·TLS·HTTP와 응답 유무를 연결합니다.

  4. 요청 기록으로 실패 분류

    연결 실패·시간 초과·HTTP 오류를 증거로 분류합니다.

작은 웹 서비스 실행과 접속 진단 미션

앞 모듈의 산출물을 이어받습니다. 제공된 Java 서비스를 띄우고 DNS·TCP·TLS·HTTP 순서로 접속 실패를 좁힙니다.

요구사항

  • 제공된 안내판 API를 Java 17·Spring Boot 3.1.x로 빌드하고 /health와 /notices를 확인합니다.
  • 실습 서비스에만 요청을 보내고 DNS·닫힌 포트·시간 초과·HTTP 500 fixture의 진단 기록을 작성합니다.
  • m01 solution의 scripts와 예제 설정을 유지하고 개인 이전 산출물은 import-workspace.py로 검토 후 가져옵니다.
  • 기본 단위 검사는 ./mvnw test, 실제 포트·TLS를 포함한 완료 검사는 bash check.sh로 수행합니다.

완료 기준

  • API 단위 테스트와 로컬 HTTP 연동 검사가 통과합니다.
  • 요청 ID로 응답과 로그를 연결하고 네 가지 실패를 구분합니다.
  • 진단 기록에 명령·관측 증거·다음 확인 단계가 있습니다.
  • check.sh는 앞 모듈 경로·권한·데이터 보존, 단위 검사 5개, 실제 HTTP 1개, 인계 검사 3개를 실행합니다. HTTP 검사에는 /health·/notices·404·500·시간 초과·응답/로그 ID·비밀 미기록 assertion이 있습니다.
  • 샌드박스에서 포트 바인딩이 차단되어 HTTP·TLS 연동은 external 검증 대기입니다. 개인 포트 허용 환경에서 starter 실패·solution 성공을 확인합니다.
bash check.sh
미션 시작 코드
모범 답안모범 답안 내려받기

검토 기준

  • 명령 기록과 관측 증거로 변경 이유를 설명합니다.
  • 다른 학습자가 README로 실행·실패 재현·검증을 따라갈 수 있습니다.