Network

소켓 프로그래밍을 하다가 발생한 의문점(왜 내 서버 소켓은 브라우저의 요청 클릭 한 번에 두 개의 커넥션을 생성하나요..?)
문제 발생우테캠에서 주어진 과제인 WAS 만들기를 하다가 콘솔에 하나의 요청에 대한 응답이 가기 전에 추가로 커넥션이 맺어지는 것을 목격했다.빨리 기능 구현을 해야 하지만, 나는 무슨 이유로 이런 현상이 발생하는지 궁금했고, 궁금한 건 또 못 참기에 삽질을 시작했다소켓 커넥션에서 발생한 이중 연결 요청이상했던 점은 커넥션을 맺은 후, 아무런 데이터를 보내지 않는다는 것이다. 그래서 처음에 Inputstream으로 데이터를 읽으면 아무것도 읽지 못한다.근데 그걸 에러로 응답해도 브라우저는 신경 쓰지 않고 다음에 오는 에러 응답만을 받아서 렌더링을 한다..근데 이거 불가능하지 않나..? 뭔지는 모르겠지만 첫 커넥션에 대한 응답은 브라우저가 받질 않는 것 같다..?이게 정상 요청일 때도 이렇게 동작해서 브라우..
로드밸런싱(Load Balancing)과 Nginx
로드 밸런싱(Load Balancing) 로드 밸런싱이란? 말 그대로 서버가 처리할 일이나 요청(Load)을 여러 대의 서버로 분산(Balancing) 처리하는 것을 의미한다. 사전적인 정의로는 둘 이상의 중앙처리장치 또는 저장장치와 같은 컴퓨터 자원들에게 작업을 나누는 것을 의미한다. 한 대의 서버로 모든 부하가 집중되지 않도록 트래픽을 적절히 관리해서 각각의 서버가 최적의 퍼포먼스를 낼 수 있도록 하는 것이 목적이다. 서비스 규모가 커지고 사용자 수가 늘어날수록 트래픽이 증가하기 때문에 기존의 서버로는 원활한 서비스 운영이 불가능하게 된다. 이에 대처하는 방식이 크게 두 가지가 있다. 기존의 서버 성능을 확장하는 Scale-up 방식 서버의 개수를 늘리는 Scale-out 방식 Scale-up의 경우..