CS 지식/네트워크7 [네트워크] 로드밸런싱(Load Balancing) 로드밸런싱이란?로드(Load)를 밸런싱 하는 것.여기서 로드란 "서버가 받는 부하"를 의미한다.이런 트래픽들을 잘 밸런싱해서 우리의 서버들에게 잘 분산을 시켜주는 모듈이라고 할 수 있다. 예시를 통해 이해해보자나의 작은 서버는 이용자가 적어서 1초에 한 번 정도의 요청만 처리하면 된다. 그러나 시간이 흘러서 이용자가 1000명을 넘어가면 어떨까? 더 나아가 만명, 수천만명의 사람들이 사용하는 서비스가 된다면?!한 개의 작은 서버로는 감당하기 어려운 상황이 일어날 것이다 !이렇게 한 번에 많은 트래픽이 몰리는 상황에 대처하기 위해서 크게 두 가지 방법이 있다. 1. Vertical Scale-Up => 서버 자체의 성능을 늘리는 방법, 한계가 있음.2. Horizontal Scale-Out => 서버의.. 2024. 10. 13. [네트워크] Socket 통신 소켓(SOCKET)이란?소켓(Socket)은 네트워크 상의 컴퓨터 간에 데이터 송수신을 가능하게 해주는 인터페이스이다. 소켓은 IP 주소와 포트번호를 사용하여 특정 네트워크 장치에서 실행 중인 애플리케이션에 연결된다. 소켓은 네트워크 통신에서 컴퓨터 간 데이터를 주고받기 위한 엔드포인트다. 정해진 프로토콜 규약에 따라 IP주소와 포트 번호를 통해 상대방을 찾아 통신할 수 있게 해준다. 등장 배경소켓(Socket)은 기존 HTTP 통신의 한계를 보완하기 위해 사용된다. 클라이언트와 서버, 두 컴퓨터가 특정한 Port를 통해 실시간으로, 양방향 통신을 가능하게 만든 통신을 의미한다. 정확히는 두 컴퓨터가 서로에게 단방향 통신을 주고 받음으로써 양방향 통신을 구동하는 것이지만, 기능적으로 두 컴퓨터는 거의 .. 2024. 9. 1. [네트워크] OSI 7계층 & TCP/IP 4계층 OSI 7계층과 TCP/IP 4계층두 모델은 네트워크 통신에 필요한 프로토콜들을 계층화하여 체계적으로 구성한 모델이다. 각각의 계층에 대한 역할과 구성이 다르지만, 네트워크 통신 과정을 계층화하여 이해하는 데 도움이 되는 공통점이 있다. 💡 TCP/IP는 인터넷에서 사용되는 실질적인 프로토콜들을 구성하고 있다. 반면, OSI 7계층은 각 계층의 기능과 역할에 대한 이론적인 설명을 제공한다. OSI 모델이란?- 개방형 시스템 상호 연결(OSI) 모델은 표준 프로토콜을 사용하여 다양한 통신 시스템이 통신할 수 있도록 국제표준화기구에서 만든 개념 모델이다. OSI는 상이한 컴퓨터 시스템이 서로 통신할 수 있는 표준을 제공하는 것이다. - 이러한 OSI 모델은 컴퓨터 네트워킹의 범용 언어로 볼 수 있고, 이.. 2024. 7. 11. [네트워크] 클라우드 서비스 (IaaS, PaaS, SaaS) 클라우드 컴퓨팅은 인터넷으로 가상화된 IT리소스를 서비스로 제공하는 것을 의미한다. 2010년대부터 본격적으로 많은 IT회사들 사이에서 클라우드 컴퓨팅이 퍼져 나가기 시작했다. 클라우드 컴퓨팅의 도입으로 더 큰 서비스를, 더 적은 인력과 자원을 들여 운영할 수 있게 되었고 나아가 기업이 아닌 개인도 역시 인터넷만 있다면 자유롭게 클라우드 컴퓨팅 서비스를 이용할 수 있게 되었다. 특히 기업의 경우 클라우드 사용 전 리소스 사용률 15%를 클라우드 도입 이후 70%의 사용률로 올렸다. 처음에는 가상머신인 Hypervisor를 이용했지만 이는 여러 OS를 구동할수록 힘이 떨어졌고, 결국 성능과 속도에 브레이크가 걸리게 되었다. 그래서 등장한 것이 바로 "컨테이너" 가상화 기술! 화물들을 적은 비용으로 옮기.. 2024. 6. 13. [네트워크] JWT 토큰 인증 (쿠키, 세션, 토큰 인증 방식) 기본적이면서도 헷갈리는 개념인 쿠키, 세션, 토큰에 대해 공부해보았다.이 세 가지 개념은 로그인을 구현할 때 빠질 수 없이 나오는 키워드 들인 것 같다. 서버가 클라이언트의 인증을 확인하는 방법으로 쿠키, 세션, 토큰 방식 이렇게 3가지가 있다고 한다.먼저 각각의 방식을 살펴보자! 🍪 쿠키: 클라이언트(브라우저)가 가지고 있는 정보쿠키는 브라우저에 저장되는 key-value형식의 문자열 덩어리다. 클라이언트가 어떠한 웹 사이트를 방문할 경우 그 사이트가 사용하고 있는 서버를 통해 브라우저에 설치되는 작은 기록 정보 파일이다. 즉 클라이언트가 가지고 다니는 정보라고 할 수 있다. 쿠키 인증 방식은 브라우저가 서버에 요청을 보내고 서버는 응답을 쿠키에 작성하여 보낸다. 쿠키 방식의 단점- 가장 큰 단점은 .. 2024. 6. 9. [네트워크] Web Server 와 Web Application Server 헷갈리는 개념인 웹서버와 웹 어플리케이션 서버의 차이점에 대해 알아보자.Web Server라는 것은 클라이언트로부터 HTTP 요청을 받아 처리하는 컴퓨터 프로그램을 의미한다. 예를 들어, 우리가 웹 페이지에 접속했을 때 웹 서버에 필요한 정적 파일과 데이터를 요청하게 된다. 웹 서버는 이를 적절한 HTML, CSS, 이미지와 같은 정적 파일 또는 데이터를 반환하고 브라우저는 이를 해석하여 페이지를 표현한다. 즉, 웹 서버는 페이지에 대한 자원을 가지고 있으며 클라이언트의 요청에 따라 적절한 자원을 찾아 반환해준다. 초기의 웹은 간단한 기능으로도 충분했지만 웹 기술이 진보함에 따라 서버 역할을 하면서 응용 프로그램 수준의 기능을 수행할 수 있는 WAS가 등장했다. Web Server와 Web Applic.. 2024. 5. 30. [네트워크] Latency & Bandwidth 네트워크란 서로 통신하고 리소스를 공유할 수 있는 연결된 장치 시스템이다. 케이블이나 무선 신호를 통해 서로 연결된 두 대 이상의 컴퓨터로 구성된다. 이러한 연결을 통해 네트워크의 모든 컴퓨터 간에 데이터를 전송할 수 있으므로 효율적인 통신과 리소스 공유가 가능해진다.좋은 네트워크를 구축하기 위해 꼭 알아야 하는 Latency와 Bandwidth 개념에 대해 알아보자. Latency (지연 시간)Latency는 데이터를 보내고 받는 데 걸리는 시간이다. 쉽게 말해, 데이터를 보내는 순간부터 상대방이 그 데이터를 받는 순간까지 걸리는 시간을 의미한다. (즉, 어떤 메시지가 두 장치 사이를 왕복하는 데 걸린 시간)Bandwidth (대역폭)Bandwidth는 네트워크가 한 번에 얼마나 많은 데이터를 전달할 .. 2024. 5. 23. 이전 1 다음