sqs에서 서버로 message가 올 순서를 보장하는 방법에 대해 설명하려고 한다. 먼저 문제의 상황을 하나 가정해보자. "글 작성"과 "글 수정" 요청이 sqs의 message로 오게되어서 처리하려고 한다.이 과정은 순차적으로 수행되어야 한다. 글 수정을 하려면 글 작성이 되지않으면 안되기 때문이다. fifo 구조의 queue라면 문제가 없지만, 순서를 보장하지 않는 standard라면 얘기가 달라진다.서버가 멈추거나 늦게 처리되는 등 모종의 이유로 인해 순서가 바뀌어서 올 수도 있으므로 동시성 처리를 해주어야한다. 이러한 기능을 구현하기 위해 고려해야할 것들을 생각해보면 다음 두가지이다. 1. 글 수정을 하기전 글이 DB에 존재하는지 확인을 해야한다. (존재하지 않는다면 의도적인 exception을 ..
ec2 ssh 접속하는 방법(feat. 터미널) 1. .pem 파일을 $ ~/.ssh/폴더에 넣는다. $ cp {pem파일 위치}/dayone-back.pem ~/.ssh/dayone-back.pem 2. .ssh 폴더로 이동 후 .pem 파일 권한 변경 $ cd ~/.ssh $ chmod 400 dayone-back.pem 3. ssh 접속 스크립트 작성 $ vi config 다음과 같이 입력후 저장(:wq) 4. aws ec2로 접속 $ ssh dayone 접속 확인!
개요 node js 서버를 Https로 사용하기 위한 방법은 3가지가 있습니다. 아파치, nginx 등 웹서버에 ssl인증을 추가하는 방식 node js의 server.js 코드에 직접적으로 ssl인증을 하는 방식 AWS 로드밸런서를 이용하여 ssl인증하는 방식 오늘 다뤄볼 케이스는 3번입니다! AWS의 ACM과 로드밸런서를 이용하면 letsencript, nginx, certbot 등 ec2 서버에서 설치 및 세팅 과정의 비용과, 포트관리 시간적 비용을 줄일 수 있습니다. 대신 금전적 비용이 증가합니다. 프리티어 기간동안 1개의 로드밸런스는 무료로 제공되고, 프리티어 기간이 끝난 사용자의 경우 시간당 비용만 매월 18달러 정도 청구됩니다! 참고하셔서 과금되지 않도록 주의해주세요. 준비물 탄력적 ip가 ..
TimeZone time zone을 서울로 변경 $ sudo rm /etc/localtime $ sudo ln -s /usr/share/zoneinfo/Asia/Seoul /etc/localtime 확인 $ date Hostname hostname 변경 $ sudo hostnamectl set-hostname dayone-backend-server 변경 확인 $ hostname 입력했을 때 바꾸고자 하는 hostname이 나와야 합니다! 재부팅 및 확인! $ sudo reboot \ /etc/hosts에 hostname 등록 $ sudo vi /etc/hosts 80포트로 실행된 서비스 체크 $ curl dayone-backend-server curl: (7) Failed to connect to day..