노드로 웹 프로젝트 하실 때 요즘 어떤 걸 많이 쓰시나요?
프론트는 리액트 많이 쓰실 것 같은데 백은 보통 어떤 거 쓰시는지 궁금합니다. 이제 막 시작하는 단계라 넓게 알려주셔도 좋을 것 같아요. 제가 찾아본 바로는 뭔가 express가 기본인 것 같긴 한데 혹시 다들 쓰시는 다른 프레임워크가 있나 싶어서요!
기술
#nodejs
#backend
#express
답변 1
댓글 0
조회 66
웹 서버 배포 너무 어려워요...
배포하는거 도와주실분 있으신가요 ?... 진짜 아무리 구글링을 해도 너무 어려워요 진짜 일주일동안 배포해보려고 별의별짓을 다하고있는데... 도와주신 분에게 소정의 알바비(?)를 드리려고 생각하고 있습니다 ... 도움 주실분 댓글 꼬옥 남겨주세요 ㅠㅠㅠㅠ
기술
#react
#네이버클라우드
#nodejs
#netlify
#github
답변 5
댓글 1
Down 1
조회 419
JS에서 기능 구현 시 function 또는 class를 어떻게 적절하게 선택해서 사용하시나요?
안녕하세요. TypeScript와 같은 언어가 아닌 바닐라JS, Node.js에서 코드를 작성하면서 막연한 궁금증이 하나 생겼습니다. 일반적으로 단일 기능이라면 함수로 기능 하나를 구현하고 이러한 기능이 하나일 경우엔 "export default"를 2개에서 4개 정도는 "module.exports"를 이용하고 있습니다. 또는 하나의 주제로 다양한 기능이 있을 경우엔 클래스로 구현하고 클래스 내 멤버들 간 "this"를 이용한 멤버 호출 등이 있기도 합니다. 다른 분들은 어떤 기준으로 기능을 함수로 만들지 클래스로 만들지 결정하시나요? 이를테면 상속이라던지 그 외 클래스 특징이 필요할 때 클래스로 구현하고 그 외에는 함수로 구현하시나요? 생각처럼 깔끔하게 머릿속에서 정리가 안되서 질문드립니다 :)
기술
#javascript
#nodejs
#function
#class
답변 2
댓글 2
조회 132
거대한 API 데이터를 불러오기
안녕하세요 입사한지 얼마 안된 주니어 개발자 입니다. 현재 저희 회사에서 챗봇 서비스를 다른 서비스로 이전하고있는데, 원래 사용중인 챗봇 서비스의 데이터를 저희 백엔드에 저장하는 일을 맡고있습니다. 데이터가 계속 추가되는 상황이고 현재 3만개 정도의 요청을 해야하는데, api응답이 페이징 되어있어 한 번 불러올 때마다 150개씩 약 200페이지를 읽어야합니다. Current 페이지에 다음 페이지의 키 값을 param에 넣어서 요청하면 다음 페이지가 로드되는 방식입니다. 현재 axios와 nodejs를 사용해서 코드 작성을 하고 있는데요. 한시간 반 정도 기다려서 id를 다 가져왔는데 문제는 그 이후에 가져온 id로 다시 3만개의 요청을 보내서 전체 결과를 json에 저장해야하는데.. 한시간 후에 확인하면 ETIMEOUT 에러가 뜹니다. Axios에러이고 너무 많은 요청을 보내서 뜬 것 같은데 시간도 너무 오래걸리고 디버깅 하기가 어려운 상황입니다ㅠㅠ 혹시 이렇게 많은 양의 api를 호출할 때 좀 더 효율적인 방법이 있을까요..? async로만 처리하기엔 한계가 있는것 같습니다ㅠ
기술
#javascript
#nodejs
#api
답변 3
댓글 1
Up 1
조회 251
mongoose 참조 관련 질문입니다. (수정)
nodejs, mongoose, mongodb 그리고 데이터 확인용으로 mongodbCompass를 사용중임을 알립니다. 현재 A,B 컬렉션이 있고, A 가 B를 참조하고 있습니다. B컬렉션에서 데이터를 삭제하면 B컬렉션에서 삭제되고 로그를 찍어보면 정상적으로 A컬렉션에서도 참조하고 있는 B 데이터가 빠지는 걸 확인했는데 mongodb Compass에서는 바뀌지 않습니다. 원래 mongodb compass에서 느리게 처리되는 건지 살짝 멘붕이 와서 질문드립니다.. -------------------------------- 현재까지 실험결과 B컬렉션 데이터 2개 추가 시 -> A 컬렉션에 대해 findById 결과 --> B 데이터 2개 추가 -> A 컬렉션에 대해 findOne({_id:_id}) 결과 --> B 데이터 2개 추가 B컬렉션에 대해 데이터 1개 삭제시 -> A 컬렉션에 대해 findById 결과 --> B 데이터 1개 , (1개 삭제) -> A 컬렉션에 대해 findOne({_id:_id}) 결과 --> B 데이터 2개 (삭제 x) -> mongoCompass -> B 데이터 1개 , A가 참조하는 B 데이터 2개 (삭제 x) 추가로 B컬렉션 데이터 1개 추가 시 -> A 컬렉션에 대해 findById 결과 --> B 데이터 2개 , (1개 추가) -> A 컬렉션에 대해 findOne({_id:_id}) 결과 --> B 데이터 2개 (이전 1개 삭제후 새로운 참조 데이터 추가 됨 ) -> mongoCompass -> B 데이터 2개 , A가 참조하는 B 데이터 2개 (이전 1개 삭제후 새로운 참조 데이터 추가 됨) stackoverflow 와 mongoose 공식문서를 참고했습니다만 이유는 잘 모르겠습니다.. 코드도 같이 첨부하겠습니다.
기술
#nodejs
#mongodb
답변 1
댓글 0
조회 46
AWS Beanstalk 배포 하기 전에 신경써줘야 할 것이 있나요 ?
현재 nodejs로 백엔드를 구성하고 EB에 배포하는데 몇 가지 오류가 생겨서 질문 드립니다. 프로젝트 구조는 다음과 같습니다. -customer └ .gitignore └ .dockerignore └ src ( 백엔드 코드 ) └ .gitignore └ Dockerfile └ Package.json -product └ customer 와 동일 -shopping └ customer 와 동일 -proxy └ Dockerfile docker-compose.yaml 리전 ap-northeast-2(seoul region) 로컬에서 빌드하고 작동하는 거 확인 후 위 코드를 모두 압축해서 EB에 올렸습니다. EB에 올리기전에 vpc , igw, 등등 미리 생성해줘야 할 게 있나요? 추가로 .gitignore 같은 파일도 같이 올려도 되나요 ? ( 초보라서 질문의 질이 떨어질 수 있지만 고수분들의 너그러운 양해를 부탁드립니다 .ㅠㅠ ) 에러 로그를 보면 1. ELB Fail -> VPC has no internet gateway 2. Stack named 'awseb-e-33wucpgpey-stack' aborted operation. Current state: 'CREATE_FAILED' Reason: The following resource(s) failed to create: [AWSEBV2LoadBalancer, AWSEBInstanceLaunchWaitCondition] 3. LaunchWaitCondition failed. The expected number of EC2 instances were not initialized within the given time. Rebuild the environment. If this persists, contact support.
기술
#docker
#aws
#nodejs
답변 1
댓글 0
Up 1
조회 99
aws lambda에서 nodejs promise 비동기 호출하는 방법
안녕하세요~ node.js 14를 aws lambda로 구동시켜서 작업 중에 있는데요. 배치 작업을 하나 만들었는데, 코드 중에 비동기로 다른 서비스를 호출해도 되는 요청이 있어서 await을 걸지 않았는데 로그를 보니 해당 코드가 요청하기 전에 람다가 꺼지는 것 같아서요. 혹시 이유를 아시는분 계신가요?
기술
#aws
#lambda
#nodejs
답변 2
댓글 2
Up 1
조회 136
nodejs driver로 replicaSet option 변경하기 도움 부탁드립니다.
아래 코드는 https://medium.com/@cramirez92/build-a-nodejs-cinema-microservice-and-deploying-it-with-docker-part-1-7e28e25bfa8b 여기에서 공부하다가 나온 코드입니다. getMongoUrl을 찍으면 다음과 같이 나옵니다. "mongodb://127.0.0.1:27017,127.0.0.1:27018,127.0.0.1:27019/movies" 현재는 해당 코드가 deprecated 되어서 실행이 전혀 안되서 현재버전으로 바꿔서 짜보고 싶은데 옵션 넣어주는 코드가 어떤 의미 인지 모르겠습니다. 도움주시면 정말 감사드리겠습니다. mongodb documentaion 링크도 같이 남겨드립니다. https://www.mongodb.com/docs/v6.0/replication/ https://mongodb.github.io/node-mongodb-native/4.13/index.html 추가로 const MongoClient = require('mongodb'); const {MongoClient} = require('mongodb'); 의 차이도 궁금합니다.
기술
#nodejs
#mongodb
답변 1
댓글 0
조회 72
영화관 처럼 좌석 예약 기능은 어떻게 구현하나요?
개인 프로젝트 중에 영화관 좌석 예약처럼 한 사용자가 고른 값을 다른 사용자가 동시간에 사용하지 못하게 하려면 백엔드를 어떻게 구현해야하나요? 단순히 좌석을 선택했을때 백엔드로 요청을 보내서 좌석 상태 (예약됨, 예약안됨)를 바꿔주면 되나요? 동시에 예약하기 페이지를 진입하면 사용자 A와 B 모두 a 좌석 상태가 예약 안됨일때인데, 사용자 A가 a 좌석 상태를 예약됨으로 변경하면 사용자 B에게는 여전히 a 좌석이 예약안됨으로 보일 것 같아서요. 제가 원하는건 사용자 A,B가 동시에 접속해서 좌석 a가 빈 자리여도 둘 중 아무나 a 좌석을 예약하면 나머지 한명에게는 a 좌석이 예약됨을 보여주고 싶습니다. 참고로 사용하고 있는 DB는 postgresql입니다. 서버는 노드구요. 이런 기능은 어떻게 구현하는지 궁금해서 질문 남깁니다.
기술
#sql
#nodejs
답변 2
댓글 0
Up 4
조회 476