php와 go의 속도 차이

회사에서 내가 개발해 쓰는 스크립트 중에 문자열을 분해해서 인덱스를 구성하는 프로그램이 있다. 대략 1억 2천만번의 반복을 해야 하고, 매 반복마다 수십 개의 if문과 문자열 분해, 때로는 다시 수십 번의 반복을 돌려야 하는 단순 무식한 스크립트이다. 한번 실행하는데 4시간 정도의 시간이 소요 되기 때문에 php-cli로 실행하는데, 굳이 php를 쓰는 이유는 웹사이트와 공통 라이브러리를 쓰기 위해서 뿐이었다.

그런데 이번에 수정을 하다가 결과를 테스트 하는데 4시간이나 걸리는 것이 짜증이 나서, 혹시나 하는 마음에 컨버전을 해 봤다. go 언어로 해당 부분을 다시 짜 돌려 본 것이다. python을 안 쓰고 go를 쓴 이유는 어차피 나는 python이나 go나 초보이고, go가 더 실행이 빠르다는 편견이 있어서 이다. 속도 개선이 얼마나 되는지가 목적이었으므로.

놀라운 것은 같은 일을 하는 go 스크립트를 실행했을 때 90초 밖에 안 걸렸다는 점이다. 4시간 vs 90초. 160배나 빠르다.

실무에 go를 활용 해야겠다는 생각을 하게 된 일이었다.

글쓴이 : Draco (https://draco.pe.kr)
크리에이티브 커먼즈 라이선스
이 저작물은 크리에이티브 커먼즈 저작자표시 4.0 국제 라이선스에 따라 이용할 수 있습니다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.