Java 스레드는 시작과 동시에 1MB의 스택 공간을 요구로 하고 스레드와 스레드 사이의 보호 공간(guard page)까지 필요

더 많은 스레드를 생성해낼 수록 heap 공간이 더 적어지는 문제점
웹 서버를 만든다고 했을 때 요청 당 1개의 스레드를 만들게 되면 결국 우리는
OutOfMemoryError 거나메모리 공간을 넘어 프로그램이 가상 메모리에 페이징되면서 전체적인 성능 저하

Goroutines vs Threads
Google이 Go 언어를 만들어낸 이후 많은 시스템 관리용 유틸리티, 서버가 Go로 짜여지기 시작했고 매 업데이트마다 엄청난 성능 향상과 발전으로 이제 어디서든 Go 언어로 짜여진 프로그램을 쉽게 만날 수 있게 되었습니다. 특히 이전에 올렸던 HTTP Server Benchmark 글에서 보여준 Go의 성능은 많은 이들에게 감명을 줄 수 있는 수준이라 생각됩니다. 이러한 Go의
https://tech.ssut.me/goroutine-vs-threads/



Seonglae Cho