사용자 도구

사이트 도구


aws:java_sdk

AWS Java SDK

withCredentials

  • 모든 서비스 객체 생성시 withCredentials로 인증 방식을 지정해주는 것이 성능에좋아 보인다.
    • 안 그러면 여러가지 CredentialsProvider를 순차적으로 시도해보면서 초기 성능 저하가 있는 것으로 보임.
    • 기본 provider 는 DefaultAWSCredentialsProviderChain 인 것으로 보임.
  • 특히 InstanceProfileCredentialsProvider 는 한번 생성해서 계속 재사용하게 해야한다.
    • 내부적으로 Thread Pool 생성하므로, 재사용하지 않으면 여러 쓰레드풀이 계속 만들어질 수 있음.
    • 비동기 refresh 사용시 필수적으로 애플리케이션 종료시 close() 호출.
    • SDK 설정시 해당 인스턴스를 인자로 넘겨야한다. 거기서 getCredentials() 호출 결과를 다른 객체에 주입하면 주기적인 credential refresh 가 일어나지 않게 되어 오류 로그가 찍힌다(실제 작동은 문제 없음)
      • The provided token has expired
      • The security token included in the request is expired
return AmazonS3ClientBuilder.standard()
                .withRegion(Regions.AP_NORTHEAST_2)
                .withCredentials(InstanceProfileCredentialsProvider.getInstance())
                .build();

localstack

  • LocalStack 과 연동시 몇가지 특별한 처리가 필요함.
  • LocalStack 에서 Java SDK 설정 항목 살펴보기

Kotlin SDK

aws/java_sdk.txt · 마지막으로 수정됨: 2023/02/23 09:21 저자 kwon37xi