DEV/Backend

· DEV/Backend
스케일 업과 스케일 아웃 클라이언트 입장에서 서비스는 항상 일관된 결과를 반환해야 합니다 하지만 서비스가 발전하면 시스템은 복잡해집니다 또한, 웹 서버를 단순히 늘리는 것만으로는 성능 향상의 한계에 부딪히게 되죠 부족한 리소스를 극복하기 위해 서버의 갯수를 늘리느냐, 크기를 키우느냐에 엔지니어들은 직면하게 됩니다 오늘은 이 문제에 대해 이야기 해봅시다 스케일 업과 스케일 아웃 정의 스케일 업(Scale-Up) 스케일 업이란 하나의 서버의 성능을 향상시키는 방식을 의미합니다. 예를 들면, 서버에 CPU나 RAM을 추가하거나, 디스크 용량을 확장하는 방식이 있습니다. 이런 방식은 설계가 간단하고 데이터의 일관성 유지가 비교적 쉽다는 장점이 있지만, 서버 자체의 물리적 한계가 있고 비용이 많이 들 수 있다는 ..
· DEV/Backend
Session 개요 with Spring 세션은 사용자의 상태와 데이터를 여러 관련 HTTP 트랜잭션(거래)에 걸쳐 유지하기 위한 메커니즘입니다 세션은 Cookie처럼 여러 HTTP 트랜잭션을 아우를 수 있어, 동일한 브라우저에서의 일련의 요청과 응답을 그룹화 할 수 있습니다 이를 통해 서버는 사용자의 상호작용을 기억하고 웹 애플리케이션을 탐색하는 동안 상태를 유지하게 됩니다 Spring에서는 standard manager가 세션 객체를 만들고 삭제 등의 관리를 합니다 하지만, 세션 저장소의 편리함의 이면에는 서버 부담이 존재하기 때문에 유의해서 사용해야 합니다. 핵심 원리 세션을 인식하는 방법은 간단합니다. 오고가는 HTTP 트랜잭션에 세션 ID를 붙이면 되죠 세션 ID를 붙임으로써 원래 요청과 응답은..
· DEV/Backend
Cookie 쿠키는 ASCII 문자로만 된 이름과 값의 쌍으로 구성된 작은 정보입니다. 보통 쿠키는 클라이언트 식별 기술로 사용됩니다. 서버에서는 저장된 쿠키를 읽어 사용자를 식별합니다 서버에서 생성 되어 사용자의 브라우저로 전송되어 저장됩니다. 이 때 쿠키에는 유효기간, 도메인, 경로도 같이 포함 되어 전송됩니다 유효기간 쿠키에 저장된 유효기간에 도달하면, 쿠키는 자동으로 삭제 됩니다. 또한, 쿠키에는 상대시간과 절대 시간이 모두 기록되어서, 쿠키가 만료 시기를 결정하는데 도움을 줍니다 경로 사용자가 서버에 요청을 보낼 때마다, 브라우저는 요청의 도메인과 경로가 쿠키의 경로와 일치하는 경우에만 요청과 함께 쿠키를 자동으로 보냅니다 Cookie 왜 쓰는가? 쿠키는 HTTP의 Stateless에 기인한 문..
· DEV/Backend
Error Cannot Find Module socket.io socket.io를 설치하고 백엔드 서버를 실행 시켰더니 에러가 발생했다. 현재 상황 // socket 등록 fastify.register(fastifyIO); fastify-socket.io를 사용하려면 위와 같이 fastify Instance에 미들웨어를 등록 되어 있음을 확인했다. 미들웨어들을 한 번에 fastifyInstance에 넣도록, 모듈을 만들어뒀는데, 이게 문제가 싶었다 하지만, 에러 트레이스를 보면, node_modules에서부터 문제가 발생 했으므로, 미들웨어 등록 문제는 아니었다. 해결 방법 생각해보니 유독 TS의 경우 js의 superset이라 그런지, 타입이나 인터페이스 등과 함께 원본? 소스가 없어 에러를 겪은 기억..
· DEV/Backend
Coturn 시그널링 서버 설치 1단계: Coturn 설치 STUN 서버이자 TURN 릴레이인 Coturn은 ICE 프로토콜에 필요한 모든 기능을 지원하여 NAT 뒤에서 WebRTC 연결을 가능하게 합니다. Ubuntu 패키지 리포지토리에서 직접 설치할 수 있습니다. sudo apt-get update sudo apt-get install --no-install-recommends coturn 2단계: WebRTC용 Coturn 구성 WebRTC용 Coturn을 설정하려면 /etc/turnserver.conf 파일을 편집해야 합니다. 다음은 WebRTC용 Kurento Media Server와 함께 Coturn을 사용하기 위한 최소 구성 예입니다. # The external IP address of th..
· DEV/Backend
Kurento Media Server Docker 설치하는 방법 실행 환경 : Ubuntu 20.04 Docker 설치 sudo apt-get udpate sudo apt-get install docker.io Kurento Media Server용 Docker 이미지를 가져옵니다 이 이미지에는 Kurento Media Server의 로컬 apt-get 설치와 모든 추가 플러그인이 포함되어 있습니다. docker pull kurento/kurento-media-server:7.0.0 Docker 컨테이너를 실행합니다. 이 명령은 호스트의 네트워크 스택을 사용하여 Kurento Media Server 이미지로 새 컨테이너를 시작합니다 docker run -d --name kurento --network h..
· DEV/Backend
Kurento Media Server Local 설치하는 방법 GnuPG 설치 터미널을 열고 다음 명령을 실행하여 GnuPG가 설치되었는지 확인합니다. sudo apt-get update ; sudo apt-get install --no-install-recommends gnupg Kurento 저장소 추가 다음으로 시스템 구성에 Kurento 리포지토리를 추가해야 합니다. 다음 명령을 실행합니다. # Get DISTRIB_* env vars. source /etc/upstream-release/lsb-release 2>/dev/null || source /etc/lsb-release # Add Kurento repository key for apt-get. sudo apt-key adv \ --keys..
· DEV/Backend
Tomcat Tomcat이라고도 하는 Apache Tomcat은 Apache Software Foundation에서 개발한 오픈 소스 웹 서버 및 Servlet 컨테이너입니다. Tomcat은 Java Servlet, JSP(JavaServer Pages) 및 EL(Java Expression Language)을 포함하여 Java 플랫폼의 여러 핵심 기술을 구현합니다. Java 코드를 실행할 수 있는 “순수한 Java” 웹 서버 환경을 제공합니다. 톰캣의 특징 서블릿 컨테이너 본질적으로 Tomcat은 웹 애플리케이션에서 요청과 응답을 처리하는 작은 서버측 애플리케이션인 Java 서블릿을 실행하는 서블릿 컨테이너입니다. JSP 엔진 Tomcat에는 실행을 위해 JSP를 서블릿으로 변환한 다음 컴파일하고 나중..
· DEV/Backend
AWS의 서버 AWS 서버를 보다보면, EC2와 S3 등이 보입니다. 사실 서버 인스턴스를 생성해서 사용했었지만 정확히 어떤 것을 목적으로 만들어진 서비스인지 모르고 사용해서 정리합니다 Amazon EC2 - 크기 조정이 가능한 컴퓨팅 용량을 클라우드에서 제공하는 웹 서비스 Amazon S3 - 확장성, 가용성, 내구성을 가진 데이터 저장 공간(Simple Storage)을 제공. Amazon RDS - 관계형 DB 관리 서비스. 관계형 DB(MySQL, Oracle 등)를 모니터링, 주기적 백업 S3란 무엇인가요? Amazon S3(Simple Storage Service)는 인터넷 데이터를 위한 안정적이고 빠르며 저렴한 데이터 스토리지 인프라를 제공하는 개체 스토리지 서비스입니다. 사용자는 웹 어디에..
· DEV/Backend
Connection to IP Address Refused. Check That the Hostname and Port Are Correct PostgreSQL을 학교에서 대여 받은 NHN 클라우드에 배포해서 연결하려고 했더니 에러가 발생 하였습니다. TypeORM으로 Ubuntu의 PostgreSQL의 접근하는 상황이었습니다 먼저, 대여한 클라우드의 기본 PostgreSQL 포트인 5432를 열어주었습니다 해결 과정 - PostGreSQL 접근 제어 이슈 방화벽을 해제했음에도 여전히 접근 할 수 없었습니다. 찾아보니 기본적으로 PostgreSQL에서 접근 제어를 하고 있었습니다 이를 해결하기 위해 먼저 설정 파일들이 몰려 있는 쿼리 파일 구성 위치를 찾습니다 sudo -u postgres psql SH..
berom
'DEV/Backend' 카테고리의 글 목록 (4 Page)