Search

웹 전체를 아우르는 문제 정리

Tag
Web
Frontend
Category
프론트엔드
Description
프론트엔드 개발자는 브라우저와 서버에 대한 지식을 갖추고 클라이언트와 협업하여 웹 문제를 해결해야 한다. 내가 서버 지식이 필수라고 생각한다.
AI 키워드
ID
14
Title
포스팅
2023/08/10
1 more property

프론트엔드 개발자가 알아야할 웹 지식

우리는 브라우저에서 생기는 모든일들을 처리할 수 있어야한다
NodeJS를 이용해 서버를 구성하는 경우 서버쪽 지식도 알아야한다
지금의 내 생각에서는 NextJS를 이용할때 BFF, MFA를 구축하다보면 프론트엔드 개발자도 결국 서버를 구성해야하고 만들어야한다고 생각한다. 그렇기에 서버쪽 지식은 필수라고 생각한다\
유저가 사이트에 접속을 했을때 index에 접근을 하게 된다. 이때 JS, Image, Data, cookie등을 가져가게 된다. 이때 JS를 가져가서 랜더링을 시키는데 이걸 하는게 FE개발자가 하는 역할이라고 볼 수 있다
Node 서버는 전체에 대해 어떻게 서빙을 할지 결정을 하는 역할을 할 Server를 만든다
유저가 여려명이 접속을 하고 있다면 흔히 말하기로는 "트래픽이 몰린다"라고 한다.
트래픽이 몰리다보면 서버의 사용량이 많아지는데, 이때 너무 많은 트래픽이 생기면 서버가 죽을수도 있다
우리는 서버에 대한 모니터링을 실시해야하는데 이 행위를 Status Check, Health Monitoring 이라고한다.

모니터링은 어떻게?

Server가 죽지 않게 하려면 scaling이 가능해야 한다.

Scaling?

서버의 가용성을 실시간으로 볼 수 있어야 한다
Vercel이나 AWS를 사용해서 배포를 한다고 하면 기본적으로 서버의 가용성을 보여준다
만약 서버 가용성이 100%가 됬을때, 서버를 늘릴지 죽일지는 PO or 비지니스팀과 상의를 해야한다(비용 문제)

트래픽?

트래픽은 서버에서 response를 내려줄때 생기는 것에 가깝다
리소스들을 가져가게가면서 생기는게 트래픽이다
이 트래픽을 컨트롤 하는 방법 중 하나는 리소스 크기를 줄이는 것도 방법이다
예를 들면 Image 최적화, 컴포넌트 최적화 등

프론트엔드 개발자는 클라이언트에 가깝기때문에

웹에서 일어나는 모든일들을 백엔드 개발자보다는 더 가깝게 알기 때문에 그 문제들을 해결하기 위해 백엔드 개발자분과 협업을 해 해결해 나가야한다