본문 바로가기

개발 상식 시리즈/백엔드 상식4

백엔드 30일 완성을 읽고 배운 것(60페이지까지) (31p)먼저 단일 스레드 버전의 서버를 만들어본다. 그런 다음 몇 가지 간단한 과정을 통해 스레드 풀을 사용하여 여러 동시 요청을 수용하도록 확장해본다.스레드란?더보기스레드는 컴퓨터 프로그램 내에서 실행되는 가장 작은 단위로, 프로세스 내에서 독립적으로 실행될 수 있는 흐름을 말합니다. 스레드는 프로세스의 자원을 공유하면서 동시에 여러 작업을 수행할 수 있게 합니다.주요 개념프로세스와 스레드의 차이:프로세스: 실행 중인 프로그램의 인스턴스로, 독립적인 메모리 공간을 가지고 운영체제에 의해 관리됩니다.스레드: 프로세스 내에서 실행되는 독립적인 작업 단위로, 프로세스의 자원을 공유합니다. 여러 스레드가 하나의 프로세스 내에서 동시에 실행될 수 있습니다.스레드의 장점:병렬 처리: 여러 스레드를 사용하여 작업.. 2024. 5. 18.
백엔드 30일 완성을 읽고 배운 것(30페이지까지) 나는 책을 통해서만 백엔드를 경험했지 밑바닥부터 내가 뭔갈 만들어 본 경험이 스프링 부트 3 한 번 밖에 없다.프로젝트를 시작하면서 백엔드 진도를 나갈 필요가 있어 작업하면서 공부도 할 겸 '백엔드 30일 완성' 책을 구매했다.앞으로 내가 위와 같은 제목으로 남기는 기록은 책을 읽으면서 내가 몰랐던 내용을 기록하는 것이다.나는 GPT랑 계속 대화하면서 배우고 그를 통해 알게 된 사실을 블로그에 남기는 걸 좋아한다. 이게 나에게 딱 맞다.따라서 본 블로그의 글들은 거의 나만을 위한 것이다. 남들 보기 좋으라고 친절하게 정리한 게 거의 없다.그래도 나의 '관점'이 블로그 방문객들에게 도움이 될 수도 있다고 생각한다.내가 잘 몰랐던 걸 남도 잘 모를 수 있는 거니까. (8p)Java 기반 웹 서버를 생성하고 .. 2024. 5. 17.
주요 아키텍처 패턴 처음에는 API 만드는 스타일만 확인하려 했는데 범용적인 아키텍처 패턴도 알아야 하겠더라.https://youtu.be/f6zXyq4VPP8?feature=shared1. Layered Architecture (계층형 아키텍처)특징:계층별 역할: 애플리케이션을 계층으로 분리하여 각 계층이 특정 역할을 담당합니다.프레젠테이션 계층: 사용자 인터페이스애플리케이션 계층: 비즈니스 로직도메인 계층: 비즈니스 규칙인프라 계층: 데이터베이스 및 외부 시스템과의 통합장점:코드 구조가 명확하여 유지보수가 쉽습니다.각 계층을 독립적으로 개발 및 테스트할 수 있습니다.단점:계층 간의 의존성이 복잡해질 수 있습니다.성능 저하의 원인이 될 수 있습니다.사용 사례:전통적인 엔터프라이즈 애플리케이션CRUD 기반 애플리케이션2. .. 2024. 5. 16.
주요 API 아키텍처 스타일 API 설계를 해야 되는데 해 본 적이 있어야지.모르면 어떻게 한다? 찾는다.https://youtu.be/4vLxWqE94l4?feature=shared1. SOAP (Simple Object Access Protocol)특징:프로토콜 기반: XML 기반의 메시징 프로토콜을 사용합니다.높은 보안: WS-Security와 같은 표준을 통해 높은 보안을 제공합니다.트랜잭션 지원: ACID 트랜잭션을 지원합니다.계약 기반: WSDL(Web Services Description Language)을 사용하여 서비스 계약을 정의합니다.사용 사례:금융 서비스와 같은 높은 보안과 트랜잭션 관리가 필요한 엔터프라이즈 시스템복잡한 비즈니스 프로세스 통합2. RESTful (Representational State Tra.. 2024. 5. 16.