Ruby on Jets로 배포된 모든 AWS Lambda 함수에 있어 공통적으로 계층(Layer)이 붙습니다. 그리고 이 계층들을 보면 공통적으로 하나의 파일을 가리키고 있습니다. 바로 Ruby on Jets에서 라이브러리 패키지로서 쓰이는 Gem입니다. Gem 같은 경우는 Jets(Rails) 프로젝트를 돌리는데에 있어 근본이자, 핵심입니다. Gem 없이는 일부 백엔드적 기능에 있어선 먹통이 발생될 수 있는 상황입니다. 즉, 계층(Layer)은 모든 Lambda 함수에 있어 공통적으로 필요한 패키지 파일을 언제든 재활용해서 쓸 수 있도록 하는 기능이라고 보면 됩니다. AWS 계층(Layer)의 시작 AWS 계층(Layer)은 2018년 말 AWS Re:Invent에서 발표된 기술입니다. 본래 AWS L..
사실 크롤링은 꼭 AWS Lambda가 아니더라도 AWS EC2 등 환경에서도 Rails를 통해 작업을 해낼 수 있습니다. 하지만 이번에 개인적인 프로젝트를 하면서 EC2서버에 크롤링을 돌리기에는 높은 스펙의 서버가 필요하고, 서버 유지 비용도 만만치 않을것이라고 여겨졌습니다. 그렇게 눈을 돌리게 된 것이 AWS Lamabda 였습니다. AWS Lamabda 환경에서 Selenium 크롤링이 이루어지게 하는 법에 대해 다뤄보겠습니다. (시작 전) Why AWS Lambda than EC2 ? 1. 서버비용 AWS EC2에서 크롤링을 돌리기 위해선 24시간 서버를 켜놔야 합니다. 하지만 시간=돈 입니다. 반면에 AWS Lambda 같은 경우는 일단 프리티어가 아니더라도 100만번 작업 내에서는 Lambda..
프로젝트를 진행함에 있어 과거에 진행했던 AWS Lambda 프로젝트를 정리해야 할 때가 있습니다. 하지만 단순히 AWS 서비스 사용 활용에 있어, Lambda만 있으면 좋겠는데 게이트웨이, Cloud Watch 등 다양한 서비스랑 연계되어 있다보니 섣불리 AWS Lambda와 관련된 서비스를 일일이 찾아내어 해지를 해내는 것도 어렵습니다. 하지만 Ruby on Jets에서는 이를 깔끔하게 해결해주는 명령어가 있습니다. 참고 AWS에 배포된 자료들만 삭제되지, Cloud9에 있는 Ruby on Jets 프로젝트는 삭제가 안됩니다. Jets Project 삭제하기 1. Cloud9에 아래 명령어를 입력해서 AWS에 올려져 있는 Ruby on Jets 관련 프로젝트를 날립니다. 저는 Production 상태..