본문 바로가기

Spring41

[Spring] Ch.2 개발에 앞서 알면 좋은 기초 지식 2.1 서버 간 통신 마이크로 서비스 아키텍처(MSA) : 서비스 규모를 작게 나누어 구성한 아키텍처 서비스 기능별로 구분해서 서로 독립적으로 애플리케이션을 개발하게 되면 각 서비스 간에 통신해야 하는 경우가 발생함 이런 상황에서의 통신을 '서버 간 통신'이라고 함 서버 간 통신은 한 서버가 다른 서버에 통신을 요청하는 것을 의미하며, 한 대는 서버, 다른 한 대는 클라이언트가 되는 구조 몇 가지 프로토콜에 의한 다양ㅎ한 통신 방식을 적용할 수 있지만, 가장 많이 사용되는 방식은 HTTP/HTTPS 방식 2.2 스프링 부트의 동작 방식 스프링 부트에서 spring-boot-starter-web 모듈을 사용하면 기본적으로 톰캣을 사용하는 스프링 MVC 구조를 기반으로 작동함 일반적인 웹 요청이 들어왔을 대.. 2024. 3. 24.
[Spring] Ch.1 스프링 부트란? 제로베이스에서 진행하는 북 스터디 첫 번째 책, 스프링 부트 핵심 가이드! 깃허브에 관련 코드를 전부 올려줘서 너무 편하다... GitHub - wikibook/springboot: 《스프링 부트 핵심 가이드》 예제 코드 《스프링 부트 핵심 가이드》 예제 코드. Contribute to wikibook/springboot development by creating an account on GitHub. github.com 1.1 스프링 프레임워크 자바 언어를 이용해 엔터프라이즈급 개발을 편리하게 만들어주는 '오픈소스 경량급 애플리케이션 프레임워크 자바로 애플리케이션을 개발하는 데 필요한 기능을 제공하고 쉽게 사용하도록 돕는 도구 + 엔터프라이즈급 개발 : 기업 환경을 대상으로 하는 개발 1.1.1 제어 .. 2024. 3. 24.
[HTTP] 4. HTTP 메서드 1. HTTP API를 만들어보자 요구사항 및 API URI 설계 요구사항 기반으로 API를 만들게 되면, 위와 같이 현업에서 잘못된 API URI 설계를 한다. 가장 중요한 것은 리소스 식별이다. API URI 설계 분리 리소스 : 회원 행위 : 조회, 등록, 수정, 삭제 API URI 설계를 할 때 리소스와 해당 리소스를 대상으로 하는 행위를 분리해야 한다. 회원이라는 리소스만 식별하고 회원 리소스를 URI에 매핑을 하면 된다. API URI 재설계 API URI 재설계를 했지만 행위는 구분이 되지 않는다. 구분하는 방법은 URI 리소스만 식별해 놓으면 HTTP 메서드인 GET, POST, PUT, DELETE 이런 것들이 조회, 등록, 수정, 삭제 역할을 대신해준다. * 계층 구조상 상위를 컬렉션으.. 2024. 1. 11.
[HTTP] 3. HTTP 기본 HTTP (HyperText Transfer Protocol) 모든 것이 HTTP 클라이언트 서버 구조 Stateful, Stateless 비 연결성(connectionless) HTTP 메시지 1. 모든 것이 HTTP HTTP 메시지에 모든 것을 전송 HTML, TEXT IMAGE, 음성, 영상, 파일 JSON, XML (API) 거의 모든 형태의 데이터 전송 가능 서버간에 데이터를 주고 받을 때도 대부분 HTTP 사용 지금은 HTTP 시대! HTTP의 역사 HTTP/0.9 1991년: GET 메서드만 지원, HTTP 헤더X HTTP/1.0 1996년: 메서드, 헤더 추가 HTTP/1.1 1997년: 가장 많이 사용, 우리에게 가장 중요한 버전 RFC2068 (1997) -> RFC2616 (1999).. 2024. 1. 11.
[HTTP] 2. URI와 웹 브라우저 요청 흐름 1. URI URI? URL? URN? URI 내부에 URL, URN이 포함되어 있다. URI는 로케이터(Locator), 이름(Name) 또는 둘다 추가로 분류될 수 있다. URI (Uniform Resource Identifier) Uniform : 리소스를 식별하는 통일된 방식이다. Resource : URI로 식별할 수 있는 모든 걸 자원이라고 한다. 웹 브라우저에 있는 HTML의 파일 것만 자원을 뜻하는 게 아니라 실시간 교통 정보 등등 이런것도 자원이라고 한다. Idenrifier : 다른 항목과 구분하는 데 필요한 정보이다. 사람을 식별할 때 주민등록번호를 식별 하는 것처럼 말한다. URL (Uniform Resource Locator) Locator : 리소스가 있는 위치를 지정한다. UR.. 2024. 1. 11.
[HTTP] 1. 인터넷 네트워크 1. 인터넷 통신 인터넷망에서 컴퓨터들은 어떻게 통신할까? 예를 들어서 클라이언트 옆에 서버가 있으면 간단하게 케이블을 연결해서 'Hello, world!'라는 메시지를 보내면 통신이 된다. 그런데 클라이언트와 서버 사이에 인터넷망이 있으면 어떻게 될까? 클라이언트가 한국에 있고 서버가 미국에 있다면 한국에 있는 클라이언트가 'Hello, world'라는 메시지를 보내야 하는데 중간에 해저광 케이블이든 인공위성으로 보내든지 이런 수많은 중간 노드라고 하는 서버들을 걸쳐서 미국에 있는 서버에게 안전하게 메시지를 도착해야 한다. 어떤 규칙으로 미국에 있는 서버에게 안전하게 도착할 수 있는지 이해를 하려면 IP 프로토콜을 알아야 한다. 2. IP (인터넷 프로토콜) IP 주소 부여 IP 역할 지정한 IP 주소.. 2024. 1. 11.