기술 창고(246)
-
[AWS] 가비아 도메인 설정 및 EC2 에 해당 도메인 적용
EC2 서버를 배포하면 기본적으로 ip주소로 입력하여 요청하거나 호출해야 합니다. 하지만 보통 일반적인 사이트들을 보면 ip주소로 접근하지 않고 도메인을 입력하여 접속합니다. 따라서 도메인을 적용시켜 봅시다. 적용시키기 전에, AWS 에서도 도메인 서비스를 지원해준다고 알고있지만 저는 가비아를 사용하기로 했습니다. 도메인 가격도 싸고, 설정도 쉬워서 가비아를 선택했습니다. 우선 가비아 사이트에 들어가서 가장 싼 가격대를 보이는 SHOP 에 들어가줍니다. SHOP이 가장 싼 이유는 실제로 가비아 서비스를 사용하고 있는 기업들이 사용하는 주소 중 가장 덜 사용되고 있어서 입니다. SHOP 으로 들어오면 자신이 생각해두었던 도메인 명을 입력해줍니다. 원하는 도메인 명으로 사용가능한 도메인들이 나오게 되는데 가..
2023.05.25 -
[Redis] EC2 환경에 Redis 설치
EC2 환경에 배포한 서버에 Redis를 포함하고 있다면, 정상적으로 운용하려면 EC2 환경에도 Redis를 설치해주어야 합니다. 따라서 EC2 환경에 Redis를 설치하는 작업을 정리해보려고 합니다. git bash 에서 ubuntu EC2 서버에 접속하여 sudo apt-get update 명령어를 입력하여 최신으로 업데이트 해줍니다. sudo wget http://download.redis.io/redis-stable.tar.gz sudo tar xvzf redis-stable.tar.gz 명령어들을 입력하여 Redis를 설치해줍니다. 설치되어 생성된 redis-stable 폴더로 진입합니다. sudo apt install make 명령어를 입력하여 make 패키지를 설치해줍니다. 그 다음 make..
2023.05.24 -
Apache JMeter 를 사용한 서버 테스트
백엔드 서버를 개발하고 부하 테스트를 위해 JMeter를 사용하여 테스트 해보기로 했습니다. JMeter는 Java 기반으로 이루어진 프로그램이라 Java와 Spring 프레임워크로 개발한 서버를 테스트하기에도 아주 적합하다고 생각합니다. 부하를 테스트하는 도구들은 여러가지가 있습니다. Ngrinder 라든지... Apache Benchmark 라든지.... Gatling 이라든지... 우선 JMeter 의 특징을 살펴보자면, 다양한 프로토콜(HTTP, HTTPS 등) 및 서버를 테스트할 수 있고, REST 웹 서비스를 테스트 하기에도 좋으며, 데이터베이스나 FTP 도 지원한다고 합니다. 또한, CLI를 지원하여 CI / CD 연동도 편리합니다. 다양한 외부 플러그인을 사용하여 기능 확장도 가능합니다. ..
2023.05.22 -
[Node] 비밀 설정 정보 관리
개발 프로젝트를 진행하다보면 감추어야할 정보들이 있습니다. 예를 들어서 DB 계정 정보같은 것들 말이죠. 따라서 이러한 정보들을 감추는 작업이 필요합니다. 그 뿐만 아니라 개발 프로젝트를 로컬 환경에서 진행하는지 배포 환경에서 진행하는지에 따라 설정값이 변하게 되는데 이번에는 DB 기준으로 환경에 따른 설정과 설정 정보들을 비밀로 관리해보는 시간을 가져볼까 합니다. 기존에 작성한 index.js 파일을 보면 이런식으로 mongoose.connect 에 직접적으로 DB 정보와 계정정보가 다 노출된 상태로 작성된 것을 볼 수 있습니다. 이것을 비밀로 설정하고 관리해주도록 합니다. 우선 config 폴더를 새로 만들어주고 dev.js, prod.js, key.js 3개의 파일을 만들어줍니다. - dev.js ..
2023.05.19 -
[Node] Nodemon 설치 및 적용
Nodemon 이란? Nodemon은 노드 서버를 키고 코드를 수정하거나 업데이트했을 때, 서버를 내리고 다시 켜야 반영이 되야하는데 이것이 번거롭습니다. Nodemon은 이런 번거로운 작업을 일일히 할 필요없이 변경점을 감지해주고 반영시켜주는 기능이라고 볼 수 있습니다. 우선 서버를 켜봅시다. 기존에 index.js 에 작성한 대로 localhost:{포트 번호}/ 주소를 입력하니 Hello World! 가 정상적으로 출력되었습니다. 이제 코드를 변경해보고 브라우저에서 새로고침을 해보면 여전히 수정된 내용이 나오지 않고 이전 내용이 그대로 출력됩니다. 서버를 다시 껐다가 실행하고 브라우저를 새로고침하면 변경된 사항이 적용되어 나오게 됩니다! (hello world! 부분은 제가 더 추가한 내용입니다.)..
2023.05.19 -
[Node] BodyParser 와 PostMan 그리고 회원가입 기능
BodyParser는 클라이언트에서 서버로 요청을 보낼 때 해당 요청을 받는 작업을 수행해줍니다. 예를 들어 로그인 화면에서 아이디와 비밀번호를 입력하고 서버로 보내게 되면 그 아이디와 비밀번호가 우선 BodyParser에 담긴다고 볼 수 있습니다. 그래서 간단한 회원가입 기능을 만들면서 이 BodyParser 를 사용하기 위해 dependency를 추가하도록 하겠습니다. 또한 구현한 기능을 테스트하기 위한 아주 적합하고 사용도 쉬운 PostMan 까지 설치하여 사용해보겠습니다. (1) BodyParser 설치 진행하고 있던 프로젝트 툴 (비주얼 스튜디오) 의 터미널에 npm install body-parser --save 명령어를 입력하면 위와 같이 패키지가 설치됩니다. (2) PostMan 설치 ht..
2023.05.19