본문 바로가기
반응형

개발249

AWS Lambda-Layers 테스트 Python Lambda-Layers 사용해서 S3 이미지 Thumbnail 생성 1. Lambda에 부여할 IAM 역할 생성 - IAM메뉴로 접속해서 '역할만들기' 클릭 - 하단에 Lambda 선택하고 다음 클릭 - 권한추가에서 S3와 연동하기 위해 "lambda", "s3"로 검색하여 'AmazonS3ObjectLambdaExecutionRolePolicy'와 "AmazonS3FullAccess" 선택하고 다음 클릭 - 역할 이름은 "Lambda-S3-Exec"로 입력하고 하단에 '역할생성' 버튼 클릭 2. S3 버킷 생성 - S3메뉴의 '버킷만들기' 클릭하여 이름만 입력하고 나머지는 디폴트로 두고 버킷 2개(mytest-upload, mytest-upload-resized) 생성 - 버킷 생성 확인 - "myt.. 2022. 2. 19.
AWS Lambda - Hello World Lambda 서버를 프로비저닝 하거나 관리하지 않아도 코드를 실행할 수 있도록 해주는 컴퓨팅 서비스 Serverless: 스스로 관리해야 할 서버 or 컨테이너 서비스가 없음 필요 시에만 코드를 실행하고, 사용한 컴퓨팅 시간에 대해서만 비용 발생 Java, Python, Nodejs, Go 등 다양한 언어 지원 및 환경변수 설정 가능 Lambda Layer를 통해 라이브러리 및 프레임워크 사용 가능 여러 AWS 서비스들과 통합되어 Event, Request 기반으로 실행 가능 자체 Editor, Zip배포, Cloud9을 통해서 개발 및 배포 가능 Cloudwatch, X-ray를 통해 요청 수, 에러 수, 처리 시간, 처리량 모니터링 가능 AWS IAM Role을 사용한 권한 관리, AWS 이벤트 소스.. 2022. 2. 19.
Maven Build 옵션(pl, am, amd) - 멀티모듈에서 특정 모듈만 빌드 Maven에서 멀티모듈로 빌드 설정을 할 경우 자식 모듈들 중 특정 모듈(프로젝트)만 빌드를 수행하고 싶을 때가 있다. 이 때 특정 프로젝만 빌드를 할 경우 Parent나 의존성이 걸린 타 모듈들의 설정 등으로 원하는 프로젝트만 빌드할 때 에러가 발생해서 안될때가 있다. 그래서 매번 Parent기준 전체 빌드를 해주는 경우가 있는데 maven pl, am, amd 옵션을 활용하면 특정 프로젝트만 쉽게 빌드가 가능하고 빌드 시간도 당연히 줄어든다. Parent - A - B - C 위와 같이 Parent에 A, B, C 프로젝트가 자식 모듈로 들어 있는 경우 1. -pl 옵션 특정 프로젝트만 빌드를 수행할 수 있다 # A 프로젝트만 빌드(여러 개일 경우 ,로 구분) mvn install -pl A 2. -.. 2022. 2. 18.
Java List removeIf(), 안전한 List 루프 Item Remove java List객체에서 조건에 해당하는 아이템을 list에서 제거할 때 일반적으로 생각할 수 있는게 List를 루프 돌면서 해당 아이템에 대해 remove() 처리를 하는 것이다. 그러나 다음 코드와 같이 실행했을 때 아래와 같은 에러 등이 발생한다. 각 아이템을 List에서 제거하면서 List 내부조정에 따른 아이템의 인덱스 등이 달라지기 때문이다 public static void main(String[] args){ ArrayList numbers = new ArrayList( Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)); for (Integer num: numbers){ if(num % 2 ==0){ numbers.remove(num); } } } java 8.. 2022. 2. 15.
IntelliJ Eclipse SpringBoot 프로젝트 Import Eclipse(STS)에서 실행하던 SpringBoot 기반 프로젝트를 IntelliJ로 import하는 방법 - IntelliJ Project 하나를 Empty Project로 생성한다. 단일 프로젝트일 경우 필요없지만 Eclipse workspace에 여러 프로젝트들이 있어서 먼저 Empty Project를 생성 - 프로젝트명은 'Test'로 하고 생성하고 아래와 같이 확인 - "Module from Existing Sources..." 메뉴를 선택하고 Eclipse workspace에서 import할 하나의 프로젝트를 선택한다 - Eclipse를 선택하고 Next - 경로정도만 확인만하고 나머지는 디폴트로 두고 Next - 프로젝트를 선택하고 Next - 그냥 Next - 사용할 JDK를 선택하고 .. 2022. 2. 11.
jQuery 동적추가(append, html) Click 이벤트 처리 jQuery 사용 시 Click이벤트 바인딩을 아래와 같이 많이 하는데 html(), append() 등으로 동적으로 추가되는 엘리먼트들에 대해서는 이벤트가 동작하지 않는다. Page가 로드되는 시점에 존재 않는 엘리먼트들에 대해서는 이벤트가 안먹힌다고 한다 $('.mydiv').on("click",function(){ // 이벤트 처리 } 동적으로 추가되는 class가 ".mydiv"인 엘리먼트에 이벤트를 위에처럼 바인딩해줬을 때는 동작하지 않는다 이럴때는 Page가 로드될 때 존재하고 동적으로 변하지 않는 상위 엘리먼트를 기준으로 바인딩 설정을 해준다 /** * ... * */ $('.myDivParent').on("click", '.mydiv', function(){ // 이벤트 처리 } class.. 2022. 2. 11.
AWS Lightsail 이해 및 테스트 Lightsail AWS에서 VPS(Virtual Private Server)를 시작하는 가장 쉽고 빠른 방법 완전히 사전 구성되어 있는 서버 - 가상머신(compute), SSD기반 스토리지, Networking, 로드밸런서, DNS관리, 고정IP, OS, 개발플랫폼(MEAN, Node.js 등), 어플리케이션(Wordpress, Nginx, GitLab, Redmine 등) 등 모두 포함 저렴하고 예측 가능한 요금 AWS 서비스(RDS, CDN 등)들과 연동 가능 맞춤형 API와 CLI 제공 EC2 vs Lightsail Lightsail WordPress 생성 - Lightsail 메뉴 이동 - Platform에 Linux, blueprint에 WordPress 선택 - instance plan에 .. 2022. 2. 9.
AWS IAM 개념 및 테스트 IAM(Identity and Access Management) AWS 리소스에 대한 접근을 안전하게 관리할 수 있게 해주는 서비스 사용자, 그룹, 권한 등을 이용하여 AWS 리소스에 대한 접근을 허용,거부 멀티팩터인증(MFA) 등 추가적인 인증 제공 기업 네트워크, 인터넷 자격증명 공급자와의 연계를 통해 다른 곳에 암호가 있는 사용자에게 AWS 계정에 대한 임시 접근 권한 부여 가능 IAM 구성 권한(Permission): AWS 리소스에 어떤 작업을 할 수 있는지 명시해두는 규칙(ex. 서울리전의 EC2를 조회할 수 있다) 정책(Policy): 사용자/역할/그룹이 어떤 서비스에 접속해서 어떤 조작(쓰기,시작,정지,삭제 등)을 할 수 있는지 정책(권한들의 모음) 기본적으로 AWS에서 미리 설정해둔 "A.. 2022. 2. 6.
반응형