server10 [Server] REST API & gRPC REST API / gRPCREST API와 gRPC는 서버와 클라이언트 간의 통신을 위해 사용되는 두 가지 대표적인 프로토콜이다.REST API를 사용하는 경우 gRPC와 비교 시 좀 더 광범위하게 사용되고 선호되는 것을 볼 수 있다.반대로 gRPC는 외부 사용자가 액세스 할 수 없는 내부 시스템 또는 구조를 만들 때 주로 사용된다. REST APIREST란 자원을 이름(자원의 표현)으로 구분해 해당 자원의 상태(정보)를 주고받는 모든 것을 의미한다.기본적으로 웹의 기존 기술과 HTTP 프로토콜을 그대로 활용한 아키텍처 스타일을 따르게 된다.REST API는 CRUD ( Create, Read, Update, Delete ) 연산을 수행하기 위해 URI로 GET, POST 방식의Http Method를 .. 2024. 12. 26. [Server] Spring vs Node.js Spring / Node.js Framework대중적으로 사용하는 백엔드 프레임 워크는 Spring, Node.js 가 있다. 백앤드 개발자 공고를 찾아봐도 Spring 혹은 Node.js 서버 개발 경험을 중요시 여긴다.따라서 두 가지 Framework의 차이점을 이해하고 상황에 맞는 프레임워크를 선택할 필요가 있다. Node.js 먼저 Node.js의 정의를 살펴보면 다음과 같다.Google Chrome의 V8 Javascript 엔진으로 빌드된 Javascript 런타임 쉽게 말하자면 JavaScript를 이용하여 서버를 만들어 줄 수 있는 툴이다.이 전의 Javascript는 스크립트 언어이기 때문에, 특정 웹 브라우저(익스플로어, 크롬, 사파리) 안에서만 동작하였다. 즉, Javascript는.. 2024. 10. 2. [Server] Nginx vs Apache Web ServerWeb Server란 HTTP 프로토콜을 기반으로 클라이언트가 웹 브라우저에서 어떠한 요청을 하면 그 요청을 받아 정적 컨텐츠를 제공하는 서버이다. 정적 컨텐츠란 단순 HTML 문서, CSS, 이미지, 파일 등 즉시 응답 가능한 컨텐츠이다. 이때 웹 서버가 정적 컨텐츠가 아닌 동적 컨텐츠를 요청받으면 WAS에게 해당 요청을 넘겨주고, WAS에서 처리한 결과를 클라이언트에게 전달하는 역할도 해준다. 대표적으로 Apache, Nginx 가 있다.웹 서버와 WAS 서버에 대한 개념과 자세한 차이점은 아래 포스팅을 참고하면 된다. [Server] Web Server / WAS 개념 및 차이점Web ServerWeb Server는 정적인 웹 리소스(HTML, CSS, 이미지 파일 등)를 서비스하.. 2024. 9. 30. [Server] Web Server / WAS 개념 및 차이점 Web ServerWeb Server는 정적인 웹 리소스(HTML, CSS, 이미지 파일 등)를 서비스하는 데 특화된 서버 소프트웨어를 의미한다. 웹 서버는 클라이언트의 HTTP 요청을 받아 해당 요청에 맞는 정적 컨텐츠를 반환한다. 웹 서버는 주로 웹 애플리케이션의 비즈니스 로직을 처리하지 않고, 단순히 클라이언트에게 정적인 웹 페이지를 제공하는 데 사용된다.웹 서버의 주요 기능과 특징은 다음과 같다. 정적 컨텐츠 제공웹 서버는 HTML, CSS, JavaScript, 이미지, 비디오 등과 같은 정적인 웹 리소스를 클라이언트에게 전송한다. 이러한 리소스는 웹 애플리케이션의 비즈니스 로직과 상관없이 변하지 않는 고정된 내용이다.HTTP 요청 처리클라이언트의 HTTP 요청을 받아 해당 요청에 맞는 파일이나.. 2024. 9. 29. [Server] What is Load Balancing? Load Balancing 로드 밸런싱은 애플리케이션을 지원하는 리소스 풀 전체에 네트워크 트래픽을 균등하게 배포하는 방법이다. 최신 애플리케이션은 수백만 명의 사용자를 동시에 처리하고 정확한 텍스트, 비디오, 이미지 및 기타 데이터를 빠르고 안정적인 방식으로 각 사용자에게 반환해야 한다. 이렇게 많은 양의 트래픽을 처리하기 위해 대부분의 애플리케이션에는 데이터가 중복되는 리소스 서버가 많이 존재한다. 로드 밸런서는 사용자와 서버 그룹 사이에 위치하며 보이지 않는 촉진자 역할을 하여 모든 리소스 서버가 동일하게 사용되도록 하는 디바이스이다. 저번 포스트에서 Reverse Proxy에 대해 설명하였는데,Reverse Proxy의 사용 이유에 로드밸런싱을 명시하였다. [Server] Reverse Proxy.. 2024. 9. 26. [Server] Reverse Proxy / Forward Proxy Proxy프록시(Proxy)는 클라이언트와 서버 간의 통신을 중계하는 역할을 하는 서버나 소프트웨어이다.클라이언트는 서버에게 직접 요청을 보내지 않고 프록시를 통해 요청을 보낸다.프록시는 해당 요청을 대신 서버에 전달하여 응답을 받아 클라이언트에게 전송한다.프록시 서버(Proxy Server)는 프록시의 기능을 수행하기 위해 사용되는 서버이다. 즉 프록시(Proxy)는 '대리'라는 의미를 갖고 있으며, 서버와 서버사이의 중계기 역할을 한다고 보면 된다.프록시를 쓰는 이유는 보안상의 이유로 직접 통신할 수 없는 두 점 사이에서 대리로 통신을 수행하여 보안성, 성능, 안정성을 향상하기 위해서이다. 보통 웹은 클라이언트에서 서버로, 서버에서 클라이언트로 통신하며 데이터를 전달한다.이때 필연적으로 중복되는 데이.. 2024. 9. 25. 이전 1 2 다음