AWS Lambda Cron (feat. apex)
AWS Lambda?
Cron?
apex?
AWS Lambda란?
AWS Lambda는 이벤트에 응답하여 코드를 실행하고 자동으로 기본 컴퓨팅 리소스를 관리하는
서버 없는 컴퓨팅 서비스입니다.
좀 더 정확히 말하면....
3,000원이라고 들어갔더니 옵션가 +4000원 느낌..
exports.handler = function(event, context, callback) {
console.log("value1 = " + event.key1);
console.log("value2 = " + event.key2);
callback(null, "some success message");
// or
// callback("some error type");
}
초 단위로 무언가를 해야한다면...??
Azure Functions는
초 단위까지 가능
한국기준으로 오후2시라면 UTC +9시간
05:47:45 UTC
+
9시간
=
14: 47: 45 KST
매일 00시 01분에
Task를 돌릴게 있다.
cron(1 15 * * ? *)
Lambda 함수를 Deploy하는 방법
1. 인라인으로 한다 -> 거의 안할 가능성이...
2. 라이브러리를 함께 포함해서 업로드 한다.
zip -r index.zip ./
웹브라우져 열고 AWS 콘솔을 열어서 업로드
zip -r index.zip ./
웹브라우져 열고 AWS 콘솔을 열어서 업로드
zip -r index.zip ./
웹브라우져 열고 AWS 콘솔을 열어서 업로드
while (true) {
zip -r index.zip ./
웹브라우져 열고 AWS 콘솔을 열어서 업로드
zip -r index.zip ./
웹브라우져 열고 AWS 콘솔을 열어서 업로드
zip -r index.zip ./
웹브라우져 열고 AWS 콘솔을 열어서 업로드
}
기존 방식의 문제점
꼭 업로드나 실행은 웹에서만?
lambda 버젼관리를 할려면?
lambda가 여러개라면?
lambda들간에 공통으로 쓰는 라이브러리가 있다면?
Build, deploy, and manage AWS Lambda functions with ease (with Go support!).
Express
Jade
Mocha
Node 진영에서
많은것을 만든
인간이 아닌 분
Why Apex?
꼭 업로드나 실행은 웹에서만?
lambda 버젼관리를 할려면?
lambda가 여러개라면?
lambda들간에 공통으로 쓰는 라이브러리가 있다면?
Apex 사용하기
위해서 필요한것들
CSV 파일 다운로드
aws_access_key_id
aws_secret_access_key
/.aws/config 파일에 저장
Apex Error Handling
~/.aws/credentials && ~/.aws/config
2개 모두 존재할때 `apex init`를 하면 에러가 납니다.
$ export AWS_SDK_LOAD_CONFIG=1
AWS 람다를 활용한 Cron 작업(feat. apex)
By JinHanHeo
AWS 람다를 활용한 Cron 작업(feat. apex)
- 1,177