백엔드5 백엔드 30일 완성을 읽고 배운 것(60페이지까지) (31p)먼저 단일 스레드 버전의 서버를 만들어본다. 그런 다음 몇 가지 간단한 과정을 통해 스레드 풀을 사용하여 여러 동시 요청을 수용하도록 확장해본다.스레드란?더보기스레드는 컴퓨터 프로그램 내에서 실행되는 가장 작은 단위로, 프로세스 내에서 독립적으로 실행될 수 있는 흐름을 말합니다. 스레드는 프로세스의 자원을 공유하면서 동시에 여러 작업을 수행할 수 있게 합니다.주요 개념프로세스와 스레드의 차이:프로세스: 실행 중인 프로그램의 인스턴스로, 독립적인 메모리 공간을 가지고 운영체제에 의해 관리됩니다.스레드: 프로세스 내에서 실행되는 독립적인 작업 단위로, 프로세스의 자원을 공유합니다. 여러 스레드가 하나의 프로세스 내에서 동시에 실행될 수 있습니다.스레드의 장점:병렬 처리: 여러 스레드를 사용하여 작업.. 2024. 5. 18. 백엔드 30일 완성을 읽고 배운 것(30페이지까지) 나는 책을 통해서만 백엔드를 경험했지 밑바닥부터 내가 뭔갈 만들어 본 경험이 스프링 부트 3 한 번 밖에 없다.프로젝트를 시작하면서 백엔드 진도를 나갈 필요가 있어 작업하면서 공부도 할 겸 '백엔드 30일 완성' 책을 구매했다.앞으로 내가 위와 같은 제목으로 남기는 기록은 책을 읽으면서 내가 몰랐던 내용을 기록하는 것이다.나는 GPT랑 계속 대화하면서 배우고 그를 통해 알게 된 사실을 블로그에 남기는 걸 좋아한다. 이게 나에게 딱 맞다.따라서 본 블로그의 글들은 거의 나만을 위한 것이다. 남들 보기 좋으라고 친절하게 정리한 게 거의 없다.그래도 나의 '관점'이 블로그 방문객들에게 도움이 될 수도 있다고 생각한다.내가 잘 몰랐던 걸 남도 잘 모를 수 있는 거니까. (8p)Java 기반 웹 서버를 생성하고 .. 2024. 5. 17. 아키텍처 패턴을 고르면서 내가 한 고민 본 코너는 내가 만들고 있는 서비스와 연관된 기록이 올라가는 곳이다.(현재는 서비스 이름이 마스킹 처리 되어 있지만(e.g. ** ** ***)출시 후에는 마스킹을 벗길 거다.)주요 문서는 비공개지만 나머지는 다 공개다.아키텍처 패턴을 뭘로 정하면 좋을까?주요 고려사항사용자 수: 많은 사용자가 동시에 사용할 가능성이 있는가? > 그럴 가능성이 낮다고 생각한다.데이터 일관성: 데이터 일관성이 중요한가? (예: 결제 처리) > 중요하다.확장성: 시스템이 얼마나 확장 가능해야 하는가? > 최대한으로.유지보수성: 코드의 유지보수와 확장이 얼마나 쉬워야 하는가? > 최대한으로.복잡성: 시스템의 복잡도를 어느 정도로 관리할 수 있는가? > 상중하 중 중.추천 아키텍처 패턴: 마이크로서비스 아키텍처 (Microser.. 2024. 5. 16. 주요 아키텍처 패턴 처음에는 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. 이전 1 다음