backend 3

[스프링부트/Spring boot] 스프링 입문 1/4 - 환경 설정

인프런 강의 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술" 정리 프로젝트 환경설정 프로젝트 생성 스프링부트 스타터 사이트에서 쉽게 스프링 프로젝트 생성할 수 있다. Project Maven : 설정 파일로 xml 사용, 쓰지 않는 추세 Gradle : Groovy 언어 사용, 훨씬 간결한 코드 Language Java Spring Boot 2.4.1x Project Metadata Group : domain name Artifact : project name Packaging : Jar Java : 11 Dependency 어떤 라이브러리를 가져와 쓸지 라이브러리 기존에 사용하기 어려웠던 스프링이 톰캣 웹 서버를 내장한 스프링 부트가 나오면서 굉장히 개발 친화적으로 변했다...

[서버/Server] Apache VS Nginx 짧고 굵게 비교하기

2주에 걸쳐 서버 프로그램으로 Apache와 Nginx를 설치해서 사용해봤다. 두 가지 프로그램이 전체 웹 서비스의 반 이상을 차지할 정도로 폭넓게 사용된다고 하니 어떤 차이점이 있는지 궁금해졌다. Apache http 웹 서버의 대명사라고 불리는 아파치는 MPM(Multi Processing Module : 다중처리모듈) 방식으로 요청을 처리한다. 스레드/프로세스 기반 구조 스레드/프로세스 기반 구조는 기본적으로 한 개의 스레드가 한 개의 요청만을 처리하는 구조이다. 사용자가 늘어날수록 많은 스레드를 생성해 메모리나 CPU 소모가 증가한다. 대표적으로 prefork와 worker 방식이 있다. Prefork MPM 실행 중인 프로세스를 복제하여 처리하는 방식 각 서버 프로세스는 한 번에 하나의 요청만 ..

[서버/Server] 백엔드 틀 잡기 1/5 - 서버 개요

Soft squared 서버반 수업을 들으며 정리한 내용이다. 서버란 ? 네트워크와 같은 과목을 공부하다 보면 위의 사진을 쉽게 접했을 것이다. 사진을 보면 client가 서버에 요청을 하고 server는 요청에 해당하는 작업을 수행해서 응답하는 모습을 보인다. 현실 세계에 빗대어 봤을 때 클라이언트를 손님, 서버를 종업원이라고 볼 수 있다. 그렇다면 종업원이 굳이 필요할까 ? 해당 주제로 간단하게 토론을 했다. 종업원은 실질적으로 음식을 요리하는 사람이 아니기 때문에 종업원이 필요하지 않은 곳도 있을 것이다. 사장님이 모든 것을 해결하는 곳이나 손님이 많이 없어 한적한 곳이라면 더욱 그럴 것이다. 반면 종업원을 꼭 써야 하는 경우는 언제일까? 바로 손님이 너무 많이 몰려 사장 혼자서는 일을 해낼 수 없..