본문 바로가기

TIL

20210823(월) [항해 78일 차] 협업돼지 배포 D-2

고통은 잠깐이다. 포기는 영원히 남는다.
- 랜스 암스트롱 -

 

 

[Nginx] Node.js와 Apache, Nginx를 같이 사용해야 할까?

 

[Nginx] Node.js와 Apache, Nginx를 같이 사용해야 할까?

 처음 node.js를 배우게 된 계기는 자바스크립트 언어를 사용하여 프론트엔드, 백엔드, 그리고 서버 구축까지 모두 할 수 있다는 장점 때문이었습니다. 그래서 서버를 구축하는 과정에 있어서도

uhou.tistory.com

NGINX 대 NODE.JS(클러스터형) 정적 파일 SIEGE 벤치마크

 

Nginx vs Node.js (clustered) static file Siege Benchmarks - CentminMod.com LEMP Nginx web stack for CentOS

Nginx vs Node.js (clustered) static file Siege Benchmarks Just a noob playing around with node.js to see what it can do as a static file server compared to Nginx 1.2.7 web server. Ran Siege benchmark tests on local computer via Virtualbox CentOS 6.3 63bit

centminmod.com

벤치마크 PM2 대 HAPROXY 대 NGINX - 단순 HTTP Node.js 애플리케이션

 

Benchmark PM2 vs HAPROXY vs NGINX - Simple HTTP Node.js application

Benchmark PM2 vs HAPROXY vs NGINX - Simple HTTP Node.js application - cat proc-cpuinfo

gist.github.com

 

NGINX가 정적 파일을 제공하는 데에 있어서 Node.js만을 사용한 것 보다 더 뛰어난 성능을 보인다고 인터넷에 떠돌고 있던 것을 봤는데 벤치마크 결과를 보니 그렇지 않은 것 같았다. 문서가 영어로 되어있어서 정확한 해석은 어렵지만, 

응답속도도 더 빠르고, 트랜젝션 시간에 있어서 상당히 우위에 서 있었다. 우리 프로젝트와의 상황과 일치하는 테스트 환경이 아니지만 앞단에 Nginx를 놓으면 속도가 당연히 느려질 거라 생각했던 것은 맞는 것 같다.

리버스 프록시로서의 역할을 할 때 WAS를 통해 직접 받아오는 것이 아니기 때문에 WAS의 주소를 알아낼 수 없어 보안적인 측면에서 좋다고 하는 것은 맞는 말인 것 같다. 

만약 WAS의 IP주소를 다른 사람이 직접 알게 된다면 어떤 점이 안좋을 지 어떤 방식으로 공격할 수 있을 지는 조금 더 고민 해봐야할 것 같다.

속도 VS 보안 // 속도는 큰 차이 없지만 보안적으로는 크게 작용할 것 같아 보안쪽을 따라 가는 게 맞아 보이긴 한다.

 

 

HTTPS를 다시 적용하고(프론트 백 모두) 테스트 한 결과 소켓을 포함해 모두 이상없이 돌아가는 것 같아 환호했다. 특이한점은 소켓을 HTTPS로 연결해놨는데 자동으로 WSS로 요청을 보냈다. 

 

동영상에서 검색 잘하는 팁을 봤는데 한글말고 영어로 치라는 것이었다. 한글로 된 자료들은 일기장처럼 본인이 했던 거 본인이 알아보도록 만들어진 게 대부분이거나, 수준낮은 컨텐츠가 많지만 외국은 다양하게 정리가 잘 되어있는 자료가 많다고... 그걸 보고 뜨끔했다. 나는 글을 쓰는 게 아니라 싸지르고 있기 때문에 누구를 위한 글인지도 모르겠다.

 

내일 드디어 배포하는 날로 잡으려는데 아직 인트로 디자인이 완성이 안돼서 조금 더 밀릴지도 모르겠다. 마케팅 관련된 부분은 결정했고, 내일부터 시작한다.

 

각종 커뮤니티에 무료로 광고를 남기는 방식으로 진행하고, 유입되는 사람에게는 소정의 상품을 주는 것이 기본이다.

원래 구글폼으로 후기를 남기는 사람에게 경품을 주려다가, 간단한 미션만 깨도 주도록 변경하였다. 물론 후기를 남기는 사람은 많이주고 남기지않고 미션만 깬 사람은 적게 줄거다. paid marketing을 경험하지 못하는 게 조금 아쉽지만 우리 서비스에는 최선의 방향인 것 같다.

 

엔코드의 조용석CTO님께서 기업설명회를 진행해주셨는데 지금까지 설명회 중에 가장 느린템포(이해하기 좋았음), 최대한 쉬운 용어를 사용하시려는 게 느껴졌다. 전에는 못알아듣는 게 대부분이었는데 이번 설명회 때는 이해 되는 부분이 많았다. 처음 듣는 서비스라 낯선 부분이 있었지만 핵심 서비스인 PRE-ORDER, 레거시 시스템의 개선업무, 실제 서비스를 개발하고 꾸준히 발전시키고자 하는 욕망이 중요하다. 등등 좋은 말씀을 많이 해주셨다. 특히 Q&A 때 부하 테스트를 한 목적과 배경, 그리고 해당하는 트래픽을 어떻게 얼마나 올려서(근거) 테스트 해보고, 성능 개선 후 어떻게 변화 했는지를 나타내면 어필이 되는 것 같다고 답변하신 부분에서 내가 했던 생각과 일치해 신기했다.

 

자기 전에 협업돼지 배포한 버전에서 새로고침하면 요청이 이전서버로 가는 현상이 있었는데 아마 캐싱과 관련된 문제인 것 처럼 보여 해결해 주신다고 했다. 캐시 쿠키 등등 중요한 개념인데 아직 잘 모르는 부분이라 따로 시간내서 공부해야할 것 같다.

 

오늘 20시 부터 머리가 조금 아팠는데 잠이 좀 부족한 것 같다. 내일은 30분이라도 낮잠을 조금 자야겠다.

같은 팀원분의 블로그를 봤는데 정리를 너무 잘해놓으셔서 나도 그렇게 하고 싶다는 욕망이 절로 들었다. 하지만 사람은 쉽게 변하지 않는 법... 오늘의 나는 여기까지 내일의 나 분발해라!...