컴퓨터잡동사니

 

 

1. 오토 스케일링 그룹과 엘라스틱 로드 밸런싱 요약

  1. 오토 스케일링 그룹 (Auto Scaling Group)

    • 역할: EC2 인스턴스 그룹을 생성하고 관리.
    • 기능:
      • 애플리케이션 트래픽에 따라 EC2 인스턴스의 개수를 자동으로 조정.
      • 최소 및 최대 인스턴스 수 지정 가능.
      • 부하 변화에 대응하여 효율적인 리소스 활용 가능.
    • 예시 설정:
      • 시작 인스턴스 수: 2개.
      • 최소 인스턴스 수: 1개.
      • 최대 인스턴스 수: 10개.
  2. 엘라스틱 로드 밸런싱 (Elastic Load Balancing)

    • 역할: 여러 인스턴스에 트래픽을 균등하게 분산.
    • 필요성: 여러 EC2 인스턴스에서 애플리케이션을 실행할 때 트래픽 분산 필수.
  3. Elastic Beanstalk

    • 역할: 오토 스케일링 그룹과 로드 밸런싱 설정을 간단하게 관리.
    • 특징:
      • AWS에서 제공하는 PaaS 서비스.
      • EC2 인스턴스 관리 자동화.
      • 오토 스케일링 및 로드 밸런싱 구성 간소화.
  4. 핵심 요약

    • 오토 스케일링 그룹: 트래픽 변화에 따라 EC2 인스턴스를 자동으로 조정.
    • 엘라스틱 로드 밸런싱: 트래픽을 여러 인스턴스에 균등 분배.
    • Elastic Beanstalk: 오토 스케일링과 로드 밸런싱 설정을 간소화하는 도구.

 

 

 

2. Elastic Beanstalk를 사용한 웹 애플리케이션 배포 요약

  1. Elastic Beanstalk 소개

    • 역할: AWS에서 웹 애플리케이션을 배포, 관리, 스케일링하는 서비스.
    • 특징:
      • Java, .NET, PHP, Node.js, Python, Ruby, Go, Docker 등 다양한 플랫폼 지원.
      • 로드 밸런싱, 오토 스케일링, 인프라 프로비저닝 작업을 자동화.
      • 종단간 애플리케이션 관리 제공.
  2. 기존 방식 vs Elastic Beanstalk

    • 기존 방식:
      • EC2 인스턴스 생성 → 적절한 런타임 설치 (Java, Python 등) → 애플리케이션 설치 → 로드 밸런싱 및 오토 스케일링 설정.
      • 많은 수작업과 관리 필요.
    • Elastic Beanstalk 사용:
      • AWS가 인프라 및 설정을 자동으로 처리.
      • 사용자는 애플리케이션 코드를 제공하기만 하면 배포 완료.
  3. Elastic Beanstalk의 주요 장점

    • 자동화: 배포, 로드 밸런싱, 오토 스케일링을 자동으로 설정.
    • 다양한 플랫폼 지원: Java, Python, Node.js 등 주요 개발 언어와 Docker 컨테이너까지 지원.
    • 빠른 배포: 몇 분 안에 애플리케이션 배포 가능.
    • 간편한 관리: AWS Management Console에서 애플리케이션과 환경을 직관적으로 관리.
  4. Elastic Beanstalk를 사용한 애플리케이션 생성 과정

    • 1단계: AWS Management Console에서 Elastic Beanstalk 검색 및 선택.
    • 2단계: 애플리케이션 생성:
      • 이름 지정: 예를 들어, my-first-elastic-beanstalk-application.
      • 플랫폼 선택: Python, Node.js, Java 등 배포할 애플리케이션의 개발 언어나 플랫폼 선택.
      • 컨테이너 지원: Docker 등 컨테이너 기반 애플리케이션도 선택 가능.
    • 3단계: 애플리케이션 배포 및 실행.
  5. 예제

    • 플랫폼 선택: Python 애플리케이션 선택.
    • 태그: 선택적으로 추가.
    • 애플리케이션 배포: 애플리케이션 코드 업로드 후 배포 진행.

 

 

 

 

 

4.  Docker와 컨테이너가 필요한 이유 알아보기

마이크로서비스 아키텍처란?

  • 하나의 대형 애플리케이션 대신, 작고 독립적으로 배포 가능한 마이크로서비스를 개발하는 아키텍처.
  • 특정 서비스만 변경하고 배포할 수 있어 유지보수가 용이함.
  • 장점: 다양한 프로그래밍 언어를 사용 가능.
    예) 영화 서비스 → Go, 고객 서비스 → Python, 리뷰 서비스 → Node.js, 예약 서비스 → Java.
  • 과제: 배포와 모니터링 복잡성 증가. 언어와 환경별로 관리 방법이 달라 운영이 어려움.

컨테이너란?

  • 각 마이크로서비스를 표준화된 방식으로 실행할 수 있도록 지원.
  • Docker를 통해 컨테이너 이미지를 생성하여, 필요한 애플리케이션 런타임종속 항목을 포함.
    • Java 마이크로서비스 → JDK, 코드, 종속 항목 포함.
    • Python 마이크로서비스 → Python, 코드, 종속 항목 포함.
  • 동일한 Docker Image를 로컬, 데이터 센터, 클라우드 어디서든 실행 가능.

Docker의 장점

  1. 클라우드 중립성
    • Azure, Google Cloud 등 다양한 플랫폼에서 동일한 Docker Image 실행 가능.
  2. 표준화 제공
    • 배포, 모니터링, 로깅 방식이 동일. 운영 팀의 부담 감소.
  3. 가벼움
    • Docker 컨테이너는 게스트 OS가 없으므로 성능이 뛰어남 (가상 머신 대비 CPU 소모 적음).
  4. 격리성 보장
    • 여러 컨테이너가 하나의 인프라에서 실행되더라도 서로 간섭하지 않음.

Docker의 핵심 요약

  • 표준화된 방식으로 다양한 마이크로서비스를 실행 가능.
  • 개발과 운영 효율성 향상.

 

 

 

 

 

 

5.  AWS의 컨테이너 오케스트레이션

 

1. 컨테이너 오케스트레이션의 필요성

  • 마이크로서비스 운영의 복잡성 해결:
    • 각 서비스별 Docker 이미지가 운영 환경에서 여러 인스턴스로 배포됨.
    • A 서비스 10개, B 서비스 15개 등 다수 인스턴스 운영 필요.

 

2. 컨테이너 오케스트레이션의 주요 기능

  • 오토 스케일링:
    • 서비스별 부하에 따라 컨테이너 수를 조정.
    • 예) 리뷰 서비스는 부하가 많아 확장 필요.
  • 서비스 디스커버리:
    • 마이크로서비스 간 동적 검색 지원.
    • 하드코딩 없이 동적으로 서로 찾을 수 있게 함.
  • 로드 밸런싱:
    • 동일 서비스의 여러 인스턴스에 트래픽을 분산.
  • 자체 복구:
    • 실패한 컨테이너를 감지하고 정상 컨테이너로 대체.
  • 다운타임 없는 배포:
    • 새 버전 배포 시 서비스 중단 없이 수행.

 

 

3. AWS의 컨테이너 오케스트레이션 솔루션

  • Amazon EKS (Elastic Kubernetes Service):
    • Kubernetes 기반.
    • 클라우드 중립적 옵션(Google Cloud 등 다른 플랫폼에서도 사용 가능).
    • 주의: 프리 티어 제공 안 함.
  • Amazon ECS (Elastic Container Service):
    • AWS에 특화된 오케스트레이션 서비스.
  • AWS Fargate:
    • 서버리스 ECS/EKS.
    • 클러스터 관리 필요 없음.
    • 주의: 프리 티어 제공 안 함.

 

4. 컨테이너 오케스트레이션의 핵심

  • 클러스터 생성:
    • EC2 인스턴스나 가상 머신을 클러스터로 구성.
    • 마이크로서비스를 클러스터에 배포.
  • 기본 기능:
    • 오토 스케일링, 서비스 디스커버리, 로드 밸런싱, 자체 복구, 다운타임 없는 배포 등 제공.

 

5. 요약

  • 컨테이너 오케스트레이션은 마이크로서비스 아키텍처 운영의 필수 요소.
  • AWS에서는 EKS, ECS, Fargate가 주요 솔루션.
  • 각 서비스의 장단점과 요구사항에 따라 선택 가능.

 

 

 

 

 

 

6.Amazon ECS와 Fargate 데모 정리

 

1. ECS와 Fargate 소개

  • ECS: 안전하고 신뢰할 수 있으며 확장성 있는 컨테이너 실행 서비스를 제공.
  • Fargate: 서버리스 방식으로 ECS를 실행하며, 인프라를 직접 관리할 필요가 없음.
  • 주의: Fargate는 프리 티어를 제공하지 않으므로 비용이 발생할 수 있음.
  •  

2. ECS 구성 요소

  • 클러스터:
    • 애플리케이션 실행을 위한 하드웨어 그룹.
    • AWS에서 관리되며, Fargate 사용 시 하드웨어 세부 사항을 신경 쓸 필요 없음.
  • 컨테이너:
    • 마이크로서비스를 실행하는 단위.
    • 예시로, httpd:2.4 Docker 이미지가 사용됨.
  • 작업(Task):
    • 하나 이상의 컨테이너 그룹.
    • 대부분은 단일 컨테이너로 구성되지만, 여러 컨테이너를 포함할 수도 있음.
  • 서비스:
    • 작업을 정의한 대로 실행하고 유지하는 역할.
    • 예: 작업의 인스턴스를 2개 실행하고 유지하도록 설정 가능.
  •  

3. ECS 구성 과정

  1. 클러스터 생성:
    • Fargate를 선택하면 AWS에서 모든 인프라를 관리.
  2. 컨테이너 정의:
    • 마이크로서비스 이미지, CPU, 메모리 사용량 등 설정.
  3. 작업 정의:
    • 애플리케이션의 블루프린트를 생성.
  4. 서비스 정의:
    • 실행할 작업 수를 지정.
    • 로드 밸런서를 추가해 트래픽을 관리.
  5. 환경 설정 검토:
    • 컨테이너, 작업, 서비스, 클러스터 설정을 확인.
  6. 리소스 생성:
    • AWS가 리소스를 생성하며, 완료까지 약 10분 소요.

 

4. 데모에서의 주요 설정

  • 샘플 애플리케이션 실행:
    • httpd:2.4 Docker 이미지 사용.
    • CPU: 0.25 vCPU, 메모리: 0.5GB.
  • 서비스 정의:
    • 작업 인스턴스 2개 실행.
    • 애플리케이션 로드 밸런서를 추가.
  • Fargate 클러스터:
    • 서버리스 방식으로 설정.
  •  

5. 요약

Fargate를 사용한 ECS는 서버리스 환경에서 마이크로서비스를 실행하는 강력한 도구입니다. 설정 과정은 AWS가 대부분의 인프라를 관리해 주므로 간단하며, 클러스터와 작업, 서비스 개념만 잘 이해하면 쉽게 사용할 수 있습니다.

 

 

 

 

 

 

 

7.Amazon ECS 사용하기

 

Amazon ECS 데모: 서비스 확인 및 관리

1. 서비스 준비

  • 이전 강의에서 Amazon ECS를 통해 클러스터와 서비스를 생성했습니다.
  • 생성 후 약 10분이 소요되어 10단계가 완료되었습니다.
  • 결과적으로 클러스터와 서비스가 준비되고 다양한 리소스가 생성되었습니다.

 

2. 서비스 확인

  1. 클러스터 상세정보 확인:

    • ECS 콘솔에서 생성한 클러스터를 열어 확인.
    • 디폴트 클러스터 사용, 실행 타입은 Fargate.
    • 현재 두 개의 작업이 실행 중이고 활성화된 서비스는 한 개.
  2. 서비스 상세정보 확인:

    • 서비스 이름: sample-app-service.
    • 작업 정의와 연결되어 있으며 작업 인스턴스를 두 개 실행 중.
    • 애플리케이션 로드 밸런서를 사용 중.
    • EC2 콘솔에서 로드 밸런서를 찾아 DNS 이름을 확인.
    • 해당 DNS로 접속하면 Amazon ECS 샘플 앱 실행 확인 가능.
  3.  

3. 서비스 상태 점검

  1. 작업 상태:

    • 작업 탭에서 실행 중인 두 개의 작업 확인.
    • 서비스의 이벤트 탭에서 발생한 이벤트를 확인할 수 있음.
    • 작업 중지 시에도 새로운 작업이 생성되어 안정적인 상태를 유지.
  2. 오토 스케일링 및 메트릭:

    • 부하에 따라 작업 수를 조정하는 오토 스케일링 설정 가능.
    • CPU, 메모리 사용률 및 작업 로그를 ECS 콘솔에서 직접 확인.

 

4. 작업 중지 시 서비스 동작

  • 작업 중지 후 서비스는 설정된 작업 수(2개)를 유지하기 위해 새 작업을 시작.
  • 서비스는 항상 설정된 작업 수를 유지하며, 상태를 모니터링하여 자동으로 복구.

 

5. 새 마이크로서비스 추가

  • 새 마이크로서비스를 추가하려면:
    1. 작업 정의 생성.
    2. 실행할 작업 수 정의.
    3. 새 서비스를 생성해 클러스터에 배포.

 

6. 클러스터 삭제

  • 사용이 끝난 클러스터는 삭제 가능.
  • "delete me" 구문을 입력하여 삭제 요청.
  • 삭제 완료까지 시간이 조금 소요됨.

 

요약

  • Amazon ECS를 활용해 서버리스 방식으로 클러스터와 서비스를 생성, 관리.
  • 서비스는 설정된 작업 수를 항상 유지하며, 필요 시 작업을 자동으로 복구.
  • 오토 스케일링 및 로그 관리 등 다양한 기능 제공.
  • Fargate를 통해 인프라 관리 부담 없이 컨테이너 실행 가능.

 

 

Amazon Elastic Container Service

완전관리형 컨테이너

Amazon Elastic Container Service(ECS)는 클러스터에서 컨테이너를 손쉽게 실행, 중지 및 관리할 수 있는 확장성이 뛰어나고 빠른 컨테이너 관리 서비스입니다.

 

 

 

 

 

8. AWS의 서버리스에 대해 알아보기 - AWS Lambda

서버리스(Serverless) 개념과 AWS Lambda 소개 정리

1. 서버리스란?

  • 서버리스는 '서버가 없다'는 뜻이 아님.
    • 애플리케이션은 여전히 서버에서 실행되지만, 사용자가 서버 관리에 신경 쓸 필요가 없음.
  • 클라우드 플랫폼이 서버 운영, 스케일링, 가용성 등을 모두 관리.
  • 개발자가 코드를 작성하고 배포하는 데만 집중할 수 있는 환경.

 

2. 서버리스의 주요 특징

  1. 인프라 관리 필요 없음

    • 서버의 위치, 운영체제, 로드 밸런싱, 스케일링 등을 고민하지 않아도 됨.
    • 클라우드 플랫폼이 이를 자동으로 처리.
  2. 탄력적 스케일링

    • 부하에 따라 클라우드 플랫폼이 자동으로 인스턴스의 수를 조절.
    • 높은 가용성을 기본으로 제공.
  3. 사용량 기반 비용 청구

    • 요청 수와 실행 시간에 따라 비용 지불.
    • 요청이 없으면 비용이 발생하지 않음.
  4. 효율적인 자원 활용

    • 필요할 때만 실행되므로 자원의 낭비를 최소화.

 

 

3. AWS Lambda 소개

  • AWS Lambda는 AWS에서 제공하는 대표적인 서버리스 컴퓨팅 서비스.
  • 특징:
    1. 완전한 서버리스:
      • 서버 관리, 스케일링, 가용성을 고민할 필요 없음.
    2. 다양한 프로그래밍 언어 지원:
      • Java, Go, PowerShell, Node.js, C#, Python, Ruby 등.
    3. 비용 효율성:
      • 요청 수, 실행 시간, 사용 메모리에 따라 비용 청구.
      • 사용한 만큼만 비용 지불.
    4. 대규모 요청 처리:
      • 수백만 건의 요청도 자동으로 스케일링해 처리 가능.

 

4. 서버리스의 장점 요약

  • 개발자는 코드에만 집중할 수 있음.
  • 자동화된 관리로 복잡한 인프라 설정 불필요.
  • 비용 절감: 사용량 기반 비용 청구.

 

5. 결론

서버리스는 개발자가 코드와 애플리케이션 로직에 집중하도록 돕는 환경이며, AWS Lambda는 이를 효과적으로 구현할 수 있는 강력한 도구입니다.

 

 

 

 

 

9. Lambda 함수 생성하기

 

1. Lambda 함수 생성

  • Lambda는 서버 관리 없이 코드 실행이 가능한 서버리스 서비스.
  • 이번 데모에서 Node.js를 활용한 Hello World Lambda 함수를 생성.
    • 함수 이름: my-node-js-lambda
    • 런타임: Node.js 최신 버전

2. Lambda 함수 생성 과정

  1. 함수 생성

    • 다양한 런타임 지원 (.NET, Go, Java, Node.js, Python, Ruby 등).
    • Node.js 선택 후 함수 생성 → 약 5~10초 소요.
  2. 코드 확인 및 기본 응답

      

exports.handler = async (event) => {
    const response = {
        statusCode: 200,
        body: JSON.stringify('Hello from Lambda!'),
    };
    return response;
};

 

응답 구조:

  • statusCode: HTTP 상태 코드
  • body: 메시지(예: "Hello from Lambda!")

 

 

3. Lambda 함수 테스트

  1. 테스트 이벤트 생성

    • 테스트 이벤트 이름: FirstEvent
    • 기본 JSON 콘텐츠 사용
{
    "key1": "value1",
    "key2": "value2",
    "key3": "value3"
}

 

2.테스트 실행

  • 테스트 결과:
    • statusCode: 200
    • body: "Hello from Lambda!"
    • 로그에서 요청 ID와 이벤트 데이터 확인 가능.

 

 

 

4. 코드 수정 및 배포

  1. 코드 수정

    • 응답 메시지 변경:
      "Hello from Lambda!" → "Hello from My First Lambda Function"
    • 이벤트 로깅 추가

 

console.log(event);


 

  1. 수정사항 배포

    • 배포 버튼 클릭 후 수정 사항 반영.
    • 수정 후 테스트 시:
      • 응답 메시지: "Hello from My First Lambda Function"
      • 로그에서 JSON 이벤트 데이터 확인 가능.

 

5. 테스트 이벤트 수정

  1. JSON 데이터 수정
    • 기존: key1, value1, key2, value2, key3, value3
    • 수정: key4, value4
    • JSON 수정 후 테스트 실행 → 수정된 데이터가 로그에 출력됨.

 

6. Lambda의 장점

  • 자동 스케일링: 수백만 개 요청 처리 가능.
  • 서버 관리 불필요: 코딩에만 집중 가능.
  • 실시간 코드 업데이트: 간단한 코드 변경과 테스트 지원.

 

7. 결론

  • Lambda 함수를 통해 서버리스 환경에서 코드 작성, 배포, 실행을 체험.
  • 자동 스케일링과 서버 관리 부담 감소로 효율적인 애플리케이션 개발 가능.

 

 

 

 

 

 

 

10. Lambda 함수 자세히 알아보기

 

 

. Lambda 함수 모니터링

  • 메트릭: Lambda 함수의 호출 횟수, 호출 지속 시간(최소, 최대, 평균), 오류 발생 여부 등을 CloudWatch를 통해 확인할 수 있습니다.
  • 로그: 함수 호출 시의 상세 로그를 확인하며, 이를 통해 디버깅과 분석이 가능합니다.

 

2. 트레이싱 활성화

  • AWS X-Ray: Lambda 함수 호출 흐름을 추적하고 성능을 분석할 수 있습니다.
  • 활성화 방법:
    • Lambda 콘솔에서 환경 설정 > 모니터링 및 운영 툴에서 X-Ray 트레이싱 활성화.
    • Lambda 실행 역할에 권한을 부여해야 작동.

 

3. Lambda 함수의 환경 설정

  • 메모리: 기본값 128MB, 최대 10GB. 메모리 용량 증가는 CPU와 비용에도 영향을 줌.
  • 임시 스토리지: 기본값 512MB, 최대 10GB, 기본 경로는 /tmp.
  • 타임아웃: 기본값 3초, 최대 15분(900초). 장기 실행 작업에는 부적합.
  • 실행 역할: S3와 같은 AWS 리소스와 상호작용할 수 있도록 권한 부여.

 

4. Lambda 함수 URL

  • Lambda 함수에 HTTP/HTTPS 엔드포인트를 생성 가능.
  • 인증 옵션:
    • IAM 인증 사용.
    • 퍼블릭 함수로 설정 시, 호출 비용에 유의해야 함.
  •  

5. 환경 변수

  • 키-값 형태로 환경 변수 설정 가능.
  • AWS가 제공하는 사전 정의 환경 변수:
    • 예: AWS_REGION, AWS_EXECUTION_ENV.
  • 코드에서 process.env 또는 os.environ으로 액세스 가능.

 

 

6. Lambda 함수 동시성

  • 스케일링: Lambda는 요청량에 따라 자동으로 스케일링 처리.
  • 예약되지 않은 계정 동시성: 기본값 10, 요청량 증가에 따른 설정 필요.

 


 

 

로스 플랫폼 컨테이너 오케스트레이션 솔루션을 사용해 마이크로서비스 아키텍처를 구현하려 합니다. 다음 중 어떤 서비스를 권장하겠습니까?.

컨테이너 오케스트레이션이 필요합니다. => Elastic Container Service

 

 

 

 

 

11.AWS 클라우드 컴퓨팅 요약

 

AWS 컴퓨팅 서비스 개요

1. 기본 컴퓨팅 서비스

  • EC2 (Elastic Compute Cloud): 애플리케이션 실행을 위한 가장 기본적인 방법.

    • EC2 인스턴스를 실행하고 ELB (Elastic Load Balancer)를 통해 로드 밸런싱 처리.

    • 운영체제를 완전히 제어하거나 커스텀 소프트웨어 실행에 적합.

  •  

2. PaaS (Platform as a Service) 권장

  • AWS에서 제공하는 PaaS는 스케일링, 가용성, 로드 밸런싱을 자동 처리.

  • Elastic Beanstalk:

    • 웹 애플리케이션 및 배치 애플리케이션 관리 간소화.

    • 코드를 제공하고 런타임만 지정하면 자동으로 EC2 인스턴스 생성 및 로드 밸런싱 수행.

 

3. 컨테이너 오케스트레이션 서비스

  • Kubernetes:

    • 가장 널리 사용되는 컨테이너 오케스트레이션 솔루션.

    • AWS에서는 Kubernetes 관리 서비스인 Amazon EKS 제공.

  • Amazon ECS:

    • AWS 전용 컨테이너 오케스트레이션 솔루션.

  • AWS Fargate:

    • ECS 또는 EKS를 서버리스 방식으로 실행 가능.

 

4. 서버리스 컴퓨팅

  • AWS Lambda:

    • 코드를 서버리스 방식으로 실행.

    • 함수 단위로 애플리케이션 구축 가능.

 

 

 

 

1.AWS Elastic Beanstalk  배포

 

스프링부트 빌드

 

 

jar 파일 및 자바 버전환경 확인

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

설정이  정상적으로 안되어서 오류가 나는 경우가 많은데, 설정이  정상적으로 안되어서 오류가 나는 경우가 많은데,

 

 

IAM 에서 Instance Profile    

설정이  정상적으로 안되어서 오류가 나는 경우가 많은데,  

다음을 참조

https://joewithtech.tistory.com/75

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.AWS Elastic Beanstalk 및 Amazon RDS

Docker 컨테이너로 MySQL 실행

docker run --detach --env MYSQL_ROOT_PASSWORD=dummypassword --env MYSQL_USER=social-media-user --env MYSQL_PASSWORD=dummypassword --env MYSQL_DATABASE=social-media-database --name mysql --publish 3306:3306 mysql:8-oracle

 

 

mysqlsh commands

mysqlsh
\connect social-media-user@localhost:3306
\sql
use social-media-database
select * from user_details;
select * from post;
\quit

 

Hello World Resource

 

 

Hello World Resource

  • http://localhost:5000/hello-world
Hello World

Users Resource

POST http://localhost:5000/jpa/users

{
    "name": "Ranga",
    "birthDate": "2000-07-19"
}

GET http://localhost:5000/jpa/users

[
    {
        "id": 1,
        "name": "Ranga",
        "birthDate": "2000-07-19"
    }
]

GET http://localhost:5000/jpa/users/1

{
    "id": 1,
    "name": "Ranga",
    "birthDate": "2000-07-19"
}

POST to http://localhost:5000/jpa/users/1/posts

{
    "description":"I want to get AWS Certified"
}

GET http://localhost:5000/jpa/users/1/posts

[
    {
        "id": 1,
        "description": "I want to get AWS Certified"
    }
]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

about author

PHRASE

Level 60  라이트

게으르고 나태한 사람은 죽음에 이르고, 애써 노력하는 사람은 죽는 법이 없다. -법구경

댓글 ( 0)

댓글 남기기

작성