개발 블로깅
-
[2019.06.25] AWS ACM(Certificate Manager)이란?개발 블로깅/기타 개념 2019. 6. 25. 21:23
4주 프로젝트 작업 중, 페이스북 계정으로 로그인하는 기능을 구현 중 제일 큰 문제가 하나 있었다. OAuth2.0을 통해 facebook 계정의 데이터를 가져오려면, 우리 서비스를 facebook development에 안전한 사이트로 적용을 시켜야 하는데, 적용을 시키기 위해서는 해당 사이트의 서버 도메인이 'https' 인증 처리된 사이트 이여야만 했다...-0- 그래서 의도치 않게 API서버에 https 인증 처리 작업을 하게 되었고..저 당시에는 안그래도 바빠서 좌절이였는데, 지금은 다 끝나고나니, https 인증 작업을 하면서 Cloud Platform에 대한 개념을 정말 많이 배우고, 특히나 AWS랑 더욱 친해진 것 같아서 지금은 대만족!!ㅋㅋㅋㅋ https는 사용하려는 서비스와 SSL 인증..
-
[2019.06.25] PostMan 사용 시 주의사항! (API 요청 시 PostMan에서는 잘 되는데, 웹 브라우저에서 호출 시 안되는 현상)개발 블로깅/오늘의 TIL 2019. 6. 25. 12:16
저번에도 위 제목과 같은 문제가 하나 있어서 TIL로 썼었다. https://helloinyong.tistory.com/129 [2019.06.04] 오늘의 TIL - passport deserializeUser 호출이 안되는 문제(postman은 정상작동하고 브라우저에서는 안되는 문제) 어제 밤새 꽁꽁 싸매던 문제가 하나 있었다. passport.serializeUser(async function(user, done) { done(null, user); }); passport.deserializeUser(function(user, done) { done(null, user); }); passport.use.. helloinyong.tistory.com passport에서 cors 때문에 문제가 있었던 ..
-
[2019.06.25] 오늘의 TIL - node 실행 시, 포트 충돌로 돌아가지 않는 문제개발 블로깅/오늘의 TIL 2019. 6. 25. 11:50
코드 에러사항 없고 문제없이 node로 서버를 돌릴려고 하는데, 아래와 같은 에러 메세지가 등장한다. 서버를 3001 포트를 이용하여 활성화를 시켜야 하는데, 이미 3001 포트가 어딘가에 사용되고 있기 때문이다. (혹은 이전에 돌린 node서버의 문제로 제대로 꺼지지 않아 그대로 3001포트가 열려있는 문제) 그래서 이 문제를 해결하기 위해서는 다른 포트를 쓰던가 해당 포트를 확인해서 죽이던가 해야한다. # 현재 사용되고 있는 각 포트 확인 $ netstat -tnlp 확인해보니, 여러 포트가 현재 활성화 되어있는 것을 확인할 수 있다. 빨간색 표시한 부분을 보니, 3001,3002포트가 PID번호 2504로 node가 현재 사용되고 있는 것을 확인할 수 있다. (PID는 프로세스 고유의 ID이다.) ..
-
[2019.06.25] AWS CloudWatch - AWS 서비스를 모니터링 해보자개발 블로깅/기타 개념 2019. 6. 25. 11:02
4주 프로젝트를 하면서 AWS랑 많이 친해진 것 같다. AWS에서 했던 것들을 차례대로 정리해보려고 한다. 이번에 Lambda를 쓰면서, 서버리스 프레임워크에서 오프라인으로 돌릴 때는 에러가 안나는데, 배포 후 클라우드에 올리기만 하면 에러가 나는 현상이 있었다. 뭔가 콘솔로그 같은거로 내부 확인을 해보고 싶은데, 클라우드에 올라간 함수다 보니....CloudWatch를 알기 전에는 콘솔을 확인하고 자시고...어쩌할 도리가 없었다.... 그런데 Lambda를 포함한, AWS 서비스의 상세 로그를 모니터링 할 수 있는 서비스가 있으니, 그게 바로 CloudWatch이다. AWS 홈페이지에 접속하여 검색창에 'cloudwatch'를 치면 해당 서비스가 나온다. cloudWatch로 들어가면, 내가 쓰고있는 ..
-
[2019.06.22] Serverless란?개발 블로깅/Server&DataBase 개념 2019. 6. 22. 14:37
서버리스는 우리말로 직역하면 '서버가 없다'라는 뜻이다. 근데 사실 진짜 서버가 없는 것이 아니고, 단지, 특정 기능을 수행하는데 서버를 사용하지 않는 형식의 아키텍처로 구성이 되어 있기 때문에 '서버리스'라고 부른다. # Monolithic Archtecture 과 Serverless Archtecture 위 사진은 일반적으로 서비스 개발을 구현할 때 사용되는 아키텍쳐이다. 왼쪽 클라이언트와 오른쪽 데이터베이스 사이에 징검다리 형식으로 서버가 존재하며, 이 서버 안에는 특정 작업을 수행할 수 있는 모든 함수들이 종속적으로 내장되어 있다. 이 함수들을 사용하기 위해서는 서버가 활성화 되어야 하며, 서버가 활성화가 되면 빈번하게 사용되지 않는 모든 함수들까지 항상 활성화가 된다. 위 사진은 서버리스 아키텍..
-
[2019.06.12] 오늘의 TIL - lambda에서 sharp 라이브러리로 이미지 resizing 작업 시 주의사항.개발 블로깅/오늘의 TIL 2019. 6. 12. 01:06
이미지 리사이징 작업을 도와주는 sharp라는 모듈이 있다. 나는 이 모듈을 lambda에서 이미지 리사이징 처리를 하려고, serverless 프레임워크에서 리사이징 함수를 작성 후, AWS에 배포를 시도했다. 그런데 로컬에서는 돌아가던 함수가 배포 후에는 계속 enternal server error가 뜨는 것이다.. cloud watch로 로그를 확인해보니, sharp 모듈을 찾을 수 없는 것이였다.. sharp 모듈이 업로드가 되지 않는 것이다... 왜..?! 다른 모듈은 배포시에 잘 올라가는데, 요녀석은 올리려면 다른 라이브러리와는 차이가 좀 있다.. 삽집을 엄청나게 하다가, 어찌어찌하여 찾은 글이다.. lambda에서 sharp를 올려서 쓰고 싶으면, sharp 버전을 리눅스의 8.x 버전으로 ..
-
[2019.06.11] 오늘의 TIL - serverless offline에서는 돌아가는데, 배포 후 internal error나는 현상개발 블로깅/오늘의 TIL 2019. 6. 11. 12:07
lambda 함수에서 s3에 이미지를 업로드 하는 함수를 작성했었는데, serverless offline에서는 잘 되던 함수가, AWS로 배포 후에 엔드포인트로 실행시키면, 서버 내부 에러 메세지를 반환하는 현상이 있었다. 처음에는, 엔드포인트로 요청하는 자체가 외부 서버 요청이므로 cors 문제인 줄 알았다. 그래서 API Gateway에서 cors 설정을 다 열어주는 법을 이것저것 찾아보는 삽질을 하였다.. 그런데 알고보니 IAM role 설정이 문제였던 것. IAM role 설정에, 해당하는 버킷에만 접근할 수 있는 권한을 주지 않아, 문제가 일어났던 것이다. serverless.yml iamRoleStatements: - Effect: "Allow" Action: - "s3:ListBucket" ..
-
[2019.0611] 오늘의 TIL - image base64 인코딩 및 디코딩 작업 시 주의사항개발 블로깅/오늘의 TIL 2019. 6. 11. 11:43
클라이언트 단에서 lambda로 이미지 파일을 보내기 위해, 파일을 base64 인코딩 작업으로 스트링 값으로 변환 시켜 전송한다. 변환시킨 스트링 값을 서버에서 받아, 다시 base64로 디코딩을 시켰는데.. 열어보면 계속 파일이 손상되는 것이다. 나는 postman으로 lambda 테스트를 하기 위해 파일의 인코딩 값을 전송시켜야 했다. 그래서 image base64 사이트에서 파일을 인코딩 시킨 값을 가져왔다. data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAArEAAAPICAYAAADOgKOQAAABzWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAA... 해당 값을 postman에 input 값으로 넣어 전송시켰다. 그런데 s3에 올라간 파일이 계속 손상..