개념 : 서버가 없다는 뜻이 아니라, 백엔드 인데 내가 직접 서버를 관리하지 않는 경우를 뜻함.
= backend without server mgmt(*management)
백엔드를 작은 함수 단으로 쪼개서, 직접 관리하지 않는 서버로 올림. 예를 들면 AWS lambda
서버리스가 아닌 경우 항상 24시간 서버는 on 상태, but 서버리스는 업로드한 함수는 잠을 자고 있음. request가 올때, aws가 함수를 깨우고 working 함. 그리고 다시 sleeping.
side project 같이 프로토타입이 빠르게 내야 할 땐 추천
서버리스 페이 방식의 차이점만 본다면 사용시간 종량제(EC2)에서, 요청 횟수 종량제(Serverless)로 변경되었다고 볼 수 있음
EC2 (*Elastic computer cloud)
single page application
페이지 하나로 된 앱, 즉 페이지 하나만 로딩하고 그 후 내부 부분적으로 수정해서 액션을 취함
spa는 csr 방식임. 이게 ssr보다 좋은게 필요한 부분만 서버측에 json으로 받아와서 그 부분만 수정해서 랜더링 보여주는게 전체 페이지 다 새로고침해서 보여주는 ssr보다 자원 낭비가 덜함. 퍼포먼스 좋음
클라이언트 브라우저에서 js 코드가 랜더링 함. 장점은 트래픽 자원 낭비가 상대적으로 덜하고, 새로고침 번쩍 같은 게 없으므로 유저 체감 경험이 더 좋음
단점은 구글은 seo가 잘 되는데 네이버, 다음은 검색할때 못 잡아줌
js를 이미 서버사이드 에서 html로 다 랜더링 한 후, 랜더링 된 문자열로 만들어 클라이언트 사이드에 브라우저에 던지면 그 문자열 html을 브라우저가 인식하면서 보여줌
장점은 초기 속도가 빠르고(html로 서버에서 다 만들어버리고 던져주니..), seo 검색 최적화에 좋은 반면 단점으론 계속 페이지 머무르면서 사용시 속도 저하가 상대적으로 존재하며, 프로젝트 코드가 상대적으로 개복잡해짐