기타

기타

HTTP 완벽 가이드 스터디 회고

0. Overview 어느덧 프로그래머스 백엔드 데브코스 과정에 참여하게 된지 3개월이 지났다. 데브코스에서는 나를 포함하여 6명의 팀원들이 함께 백엔드 개발자를 목표로 공부하고 있다. 데브코스에서 최대한 많은 것을 얻어가고자 커리큘럼 이외의 스터디를 진행하게 되었고 "HTTP 완벽 가이드"라는 책을 스터디 도서로 선정하여 스터디 진행 과정을 기록해보려고 한다. 1. 스터디 도서 선정 스터디 이야기가 팀이 결성되고 초반에 나왔던 것 같다. 팀원 모두가 스터디에 관심이 많았으며 공부하고자 하는 열정을 가지고 있었다. 이야기가 일찍 나온것에 비해 도서를 선정하는 부분에서는 꽤나 시간이 걸렸던 것 같다. 처음에는 면접 준비를 위한 스터디를 할 지, 조금은 자세히 들여다 볼 수 있는 스터디를 할 지 고민이 많았..

기타/가상 면접 사례로 배우는 대규모 시스템 설계 기초

2장 : 개략적인 규모 측정

개략적인 규모 측정 보편적으로 사용되는 성능 수치 항목들을 추정해서 계산하는 것으로 프로그래머에게는 필요한 기본기이다. 2의 제곱수나 응답지연(latency) 값과 가용성에 관계된 수치들의 이해가 있어야 한다. 2의 제곱수 - 데이터 볼륨의 단위를 계산하기 위해 사용(양을 측정)하는 최소 단위는 1바이트(8비트)이다. - 아스키 문자 하나가 차지하는 메모리 크기는 1 바이트이다. - 보통 많이 사용되는 UTF-8의 경우 1~4바이트가 사용된다. - 한글 또는 다국어를 고려할 때 한 단어를 4바이트 까지 고려하는 것이 좋다. 2의 x 제곱 근사치 이름 축약형 10 1천 1킬로바이트 1KB 20 1백만 1메가바이트 1MB 30 10억 1기가바이트 1GB 40 1조 1테라바이트 1TB 50 1000조 1페타바..

기타

[Build Tool] Maven 이란 ?

이번 포스팅에서는 빌드 도구(Build Tool)중 하나인 Maven에 대해서 알아보도록 하겠습니다. 그동안 Gradle만 사용해보았고, 정확히 무엇인지 알고 사용했다기보다 그저 복붙을 통한 사용만 해봤기 때문에 빌드 도구에 대한 개념을 정리하고자 작성하게 되었습니다. 빌드(Build) ? 먼저, Maven에 대해 알아보기 앞서 빌드에 대해 알아보겠습니다. 빌드는 소스코드 파일을 컴퓨터에서 실행할 수 있는 독립 소프트웨어 가공물로 변환하는 과정인데 쉽게 풀어 설명하자면, 우리가 작성한 소스코드(Java) 프로젝트에서 쓰인 각각의 파일 자원 (.xml, .jpg, .jar, .properties)을 JVM이나 톰캣같은 WAS가 인식할 수 있는 구조로 패키징 하는 과정 및 결과물이라고 할 수 있다. 빌드 도..

기타/가상 면접 사례로 배우는 대규모 시스템 설계 기초

1장 : 사용자 수에 따른 규모 확장성

0. Overview 해당 포스팅은 "가상 면접 사례로 배우는 대규모 시스템 설계 기초"라는 도서를 읽고 이를 정리하고자 작성하는 포스팅입니다. 이번 챕터에서는 한 명의 사용자를 지원하는 시스템에서 시작하여, 최종적으로 수백만 사용자를 지원하는 시스템을 설계하고 규모 확장성에 대한 이해를 높여보자. 1. 단일 서버 모든 컴포넌트가 단 한대의 서버에서 실행되는 시스템 웹 앱, 데이터베이스, 캐시 등이 전부 서버 한대에서 실행되는 구조 1. 사용자가 도메인 이름(api.mysite.com)을 이용해 웹 사이트 접속 2. DNS(Domain Name Service)를 통해 도메인 이름을 IP 주소로 변환되는 요청 발생 3. DNS 결과로 IP 주소 반환 4. 해당 IP 주소로 HTTP 요청 전달 5. 요청 받..

엥재
'기타' 카테고리의 글 목록