AWS Lambda Node.js

프로젝트 2023. 3. 12. 13:34

 

 Lambda만 사둔 강의에서 조금 난이도 있는 부분이 있어서 그 부분만 실습을 해보고 다음 진도로 넘어가야 할듯 싶다. 

 일단 식사 하고 와서 진행하자. 

https://ko.javascript.info/async-await

 

async와 await

 

ko.javascript.info

 await과 Promise 라는 것을 써서 진행하는 거다. 그 테스트 파일을 읽고 쓰는데 시간이 걸려서 그런가 싶기도 하다. 코루틴 비슷한거 인듯 싶다. 유니티에 보면 C#에서 반영을 안했던걸 코루틴으로 구현해 놓고 이런게 있었는데 이제는 C#에도 async 문법이 들어 왔기 때문에 이제는 이걸 유니티에서도 쓰는 법을 익혀야 한다. 먼저 자바스크립트에서 쓰는 법을 익히고 그 개념을 가져가가 C#에서 쓰면 될듯 싶다. 

 유니티 코루틴에 waitUntil이 await고 waitForTime이 setTimeOut인거 같다. async가 IEnumerator 라고 생각해야 겠다. 이게 F#에서 IEnumerable 성격에 자료구조를 마치 async 코루틴 처럼 쓸수가 있는데 무언가 공통분모가 있나 보다. 

물론 정확하게 개념이 대응이 되지는 않는다. 그래도 일단은 이정도로 해놓고 진행하도록 한다. 

 코드가 이건데 갑자기 졸려온다. 자고 해야 겠다. 

 AWS 서버가 익숙해지면 그 다음으로 솔리디티라는 블록체인 언어를 공부해야 한다. 솔리디티에 대해서는 전회사에 서버 담당자 덕분에 알게 되었다. 

 일단 그건 그렇고 자기 전에 머리가 아팠던 코드를 한줄 한줄 잡고 가자. 

const fs = require("fs")

 require는 외부에 모듈을 불러오는 거라고 한다. 이게 아마 유니티에 있는 FileSteam과 같은 모듈인가 싶다. 확실한건 아닌데 이래서 개인적으로 약어를 좋아하지 않는 편이다. using과 비슷한거라고 생각하면 될듯 싶다. 

 tmp는 임시 저장소를 의미하는듯 싶다. 임시 저장소에 text.txt를 생성하고 쓴다. 

 그리고 그 다음이 자바 스크립트에 독특한 특징인데 함수를 매개변수로 박아 버릴수가 있다. 함수를 변수처럼 쓸수가 있다. C#도 델리게이트의 친구들을 쓰면 그게 구현이 가능한걸로 알고 있다. Action같은거 말이다. 

 그 함수는 파일생성 혹은 쓰기가 잘 되었는지에 따라 메세지를 주는 함수이다.

 그리고 await과 Promise를 쓰는 이유는 읽고 쓰는데 시간이 걸려서 그런듯 싶다. 

 그 다음 읽기 함수도 쓰기와 마찬가지로 주소가 있고 어떤식으로 읽어올지 타입을 정하고 완료시 어떤 함수를 실행할지 추가로 정할수 있는듯 싶다. 그 나중에 추가로 실행하는 함수를 콜백 함수라고 하는듯 싶다.  

 됬다. 자고 읽어 났더니 배가 고프다. 먹고 실습을 해야 겠다.

 좀 어렵고 머리가 아프면 그냥 자고 읽어나면 해결이 되곤 한다. 아마 자는 동안에도 머리는 쉬지가 않는가 보다. 

 resolve는 해결하다고 reject는 거부하다이다.

 외주 사이트에 등록한지 얼마 안되서 외주 제안이 왔다. 생각보다 반응이 빠른듯 싶긴하다. 계약이 잘되면 당분간은 AWS 연구를 못 올릴꺼 같긴하다. 다만 그 외주가 AWS를 써야 하는 외주다.

 역시나 외주도 AWS를 모르면 할수 없는 외주가 나오는듯 싶다. 유니티 메인인데 곁가지 정도로 AWS가 필요하다. 여튼 공부를 좀 더 진도를 빠르게 당겨야 할듯 싶다. 

 앗! 에러가 뜬다. 영혼없이 따라 치터라도 에러가 뜨면 정신을 차리게 되서 배우는게 많다. 

 import라는 좀더 익숙해 보이는걸 대신 쓰면 된다고 한다. 이게 더 최신 문법이라고 한다. 

https://www.daleseo.com/js-node-fs/

 

Node.js의 fs 모듈로 파일 입출력 처리하기

Engineering Blog by Dale Seo

www.daleseo.com

 Node.js 모듈에 대해서 따로 공부가 필요할듯 싶다. 

https://www.daleseo.com/js-node-path/

 

Node.js의 path 모듈로 경로 다루기

Engineering Blog by Dale Seo

www.daleseo.com

 요 모듈도 알아두면 좋을듯 싶다. 

 여튼 오늘 해야 할일은 마무리 했다. 내일부터는 실재 유니티에 클릭커스러운 프로젝트를 만들어 보면서 AWS DynamoDB를 어떻게 쓰는지 확인해 보도록 하자. 

  

'프로젝트' 카테고리의 다른 글

AWS 유니티 Networking  (0) 2023.03.14
AWS NoSQL 유니티  (0) 2023.03.13
AWS Lambda 유니티  (0) 2023.03.12
AWS NoSQL 실습  (0) 2023.03.11
Miro 협업툴 추전  (0) 2023.03.11

WRITTEN BY
아이고이아

,