기타

Aug 11, 2022 - ubuntu에 golang 최신버전 설치 및 구동

jongviet 2022. 8. 11. 23:29

*8월11일

-사용하고 있는 Cloud 서비스의 Javascript용 SDK가 특정 용량 이상의 비디오를 업로드 시 CPU 및 메모리 과부하를 일으켜 문제가 되는 경우가 발생했다. EC2 자원 조정, 미국 서비스 센터 문의 등 다양한 방법을 취했지만 해결되지 않았고, 비디오 업로드 프로세스만 golang SDK를 사용하여 처리하기로 했다.

 

 

#golang 설치

apt-get install를 활용할 시 최신버전의 golang이 설치되지 않아 사용하는 특정 패키지에 문제를 일으켜, 하기와 같이 설치했다.

 

cd {원하는경로}

curl -OL https://golang.org/dl/go{version}.linux-amd64.tar.gz

sudo tar -C /usr/local -xvf go1.16.7.linux-amd64.tar.gz

sudo nano ~/.profile

export PATH=$PATH:/usr/local/go/bin     //최하단에 입력

source ~/.profile

go version // 버전 확인

 

 

설치 참조 링크

https://www.digitalocean.com/community/tutorials/how-to-install-go-on-ubuntu-20-04

 

 

#프로젝트 배포 및 tmux를 이용한 구동

backend node project는 pm2를 이용하여 관리 중인데, go project는 pm2를 쉽게 사용할 수 없었기에(pm2 홈페이지 상 방법이 있긴했으나 tmux를 이용하는게 훨씬 편해 보였음) tmux를 사용하여 처리하기로 했다.

 

sudo apt-get install tmux

tmux new -s {sessionName} // 신규 세션 생성, 접근된 세션에 go run {file}을 해서 켜주면 된다~

tmux ls // session list 확인

tmux attach-session -t {sessionName} // 구동되고 있는 세션 접근하여 확인

ctrl + b -> d로 해당 세션 나올 수 있음.

 

에러로그는 최초 비디오 업로드 요청을 받는 API에서 찍고 있기에 별도 tmux 로그는 달지 않았다.