Skip to content

deagwon97/subdomain-dynamic-reverse-proxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

subdomain 기반 다이나믹 리버스 프록시 서버 개발 및 성능 비교

img

subdomain 기반으로 목적지 서버를 식별하여 사용자를 중계해주는 다이나믹 리버스 프록시 서버를 개발했습니다. 처음 개발할 때는 nodejs 활용했습니다. 하지만 생각보다 성능이 높지 않았고, golang를 통해서 중계서버를 만든다면 성능상 어떤 차이가 있을 지 확인해보고 싶어 이 실험을 진행했습니다.

결론적으로 Golang으로 동작하는 중계 서버가 Nodejs로 동작하는 중계서버보다 안정성 측면에서 더 우수하다는 것을 알게되었습니다. 실험에 관한 설명은 아래 블로그 링크를 참고해 주시기 바랍니다.

how to run

# proxy-nodejs: node.js로 동작하는 중계 서버
cd ~
cd proxy-nodejs
yarn install
yarn build
yarn serve

# proxy-go:  go로 동작하는 중계 서버
cd ~
cd proxy-go
go mod tidy
go build .
./proxy-go

# proxy-test: 실험을 위한 코드
cd ~
cd proxy-test
go mod tidy
go build .
./run.sh