백엔드에 대한 기초 지식을 점검해보고자 백엔드 로드맵을 참고하여 하나씩 점검을 해보려고한다. 로드맵에 나온 키워드를 중심으로 하나씩 정리를 할 예정이다. Internet(인터넷) 인터넷은 현재 우리의 삶을 굉장히 편하게 만드는 요소 중 하나이다. 이를 이해하기 위해서
두번째로 알아볼 백엔드 지식은 HTTP이다. 인터넷에 대한 이해를 위해 꼬리잡기식 공부로 많은 양을 정리하였는데, 이번에는 적을 것으로 생각된다. HTTP(HyperText Transfer Protocol) : 텍스트 기반의 통신 규약으로 인터넷에서 데이터를 주고
오늘은 웹브라우저는 어떻게 작동하는지 알아보도록 하자 웹브라우저 브라우저는 동기(Synchronous)적으로 HTML+CSS, JS를 해석한 내용을 화면에 보여주는 응용 소프트웨어이다. 브라우저의 구조는 아래와 같다. 이미지 출처: https://d2.naver.
오늘은 DNS에 대해서 공부해보자. DNS : DNS는 Domain Name System의 줄임말로 인터넷 전화번호부를 이야기한다. 웹 브라우저는 IP를 통해서 상호작용을 한다. DNS는 인터넷 자원을 로드할 수 있도록 도메인 주소를 IP 주소로 변환해주는 역할을 한
인터넷에 대한 기초를 어느정도는 정리한 것으로 생각해 Database에 대한 이야기를 진행해보고자 한다. 관련한 내용은 검색 및 "SQL 첫걸음"을 통해서 정리하여 작성되었다. : 데이터를 저장 및 보존하는 시스템이다. Application에서는 데이터가 메모리 상에서
API & Authentication
Testing과 CI/CD에 대해서 알아보자.: 작성한 코드에 문제가 없는지 확인하기 위해서 개발자들은 테스트를 진행하게 된다. 다만, 각 상황에 맞게 테스트가 진행되야되기 때문에 Unit Tests, Integration Tests, Functional Tests로
Message Brokers에 대해 알아보자.
Building for Scale에 대해서 알아보자. 책 "가상 면접 사례로 배우는 대규모 시스템 설계 기초"를 참고하여 전반적인 내용을 작성해보려고한다.
개인적인 일정들로 공부한 것들을 정리할 시간까지는 없어 포스팅이 조금 늦게 되었다. 그럼 다시 "가상 면접 사례로 배우는 대규모 시스템 설계 기초"를 읽고 알게 된 내용들을 정리해보도록 하겠다. 안정 해시 설계 : 보편적으로 사용하게되는 Scale out 방식의 규모 확장에서는 데이터를 각 서버에 균등하게 분배하는 것이 중요하다. 안정 해시는 이를 위해...
"가상 면접 사례로 배우는 대규모 시스템 설계 기초"를 알게된 Building for Scale 3편이다. 뒤에 부분 부터는 전반적인 지식 이야기보단 각 케이스 마다의 사례를 이야기해서 분산 시스템을 위한 유일 ID 생성기 까지 이야기를 하고 Building for S