싱글 페이지 렌더링 방식의 유행과 JAM 스택의 등장

자바스크립트 위주의 싱글 페이지 렌더링 방식은 어떻게 등장하게 된 것일까?

과거 PHP나 JSP를 기반으로 대부분의 웹 애플리케이션이 만들어졌을 때는 거의 대부분의 렌더링이 서버사이드에서 이뤄졌다.

페이지 이동할때, 새로운 페이지를 서버에서 내려받는 방식.

자바스크립트가 서서히 다양한 작업을 수행하면서, 자바스크립트를 모듈화 하는 방안이 점차 논의되어서 CommonJS와 AMD가 출시되었다. 이로 인해 자바스크립트가 모듈화되고, 사용자 기기의 성능향상과 인터넷 속도 발전으로 자바스크립트가 할 수 있는 일이 많아짐.

또 싱글페이지 애플리케이션에서 개발자가 조금더 간편하게 개발 경험을 제공했고, 더욱 간편하게 웹 애플리케이션을 만들수 있다는 장점이 있었다.

그리고 이전에는 자바스크립트가 할수 있는일이 좀 제한적이었기 때문에, 복잡한 처리는 모두 서버에서 진행해야했다. 하지만 이러한 서버 의존적인 문제는 웹 애플리케이션의 확장성에도 걸림돌로 작용했는데, 기능이 다양해지거나, 사용자가 늘어나면, 동시에 서버도 확장해야했다.

<aside> 👶🏼 이러한 서버의존적인 문제들로 MERN, MEAN 스택들이 나오기 시작했다.

</aside>

새로운 패러다임의 웹서비스를 향한 요구

<aside> 👶🏼 자바스크립트 리소스의 크기와 수가 모두 증가하기 시작했다. (우 상향 곡선) 2012년대비 10년동안 100배 이상 증가했다.

</aside>

<aside> 👶🏼 하지만, 기기와 인터넷 속도등 웹 전반을 이루는 환경이 크게 개선했음에도 불구하고, 실제 사용자들이 느끼는 웹 애플리케이션 로딩속도는 5년전이나 지금이나 크게 차이가 없거나, 오히려 느리다. (자바스크리립트 코드의 절대적인양 증가)

</aside>

서버 사이드 렌더링