Zero to Hero
article thumbnail
SQL 레벨업 01
Review 2021. 5. 2. 20:29

DBMS의 개략적인 구조 1. 쿼리 평가 엔진 - Pareser + Optimizer + 플랜 실행 + 연산 평가 - 입력받은 SQL 구문을 분석하고, 어떤 순서로 기억장치의 데이터에 접근할지 결정해 실행 계획을 세움 2. 버퍼 매니저 - DBMS의 버퍼를 관리한다. 3. 디스크 용량 매니저 - 어디에 어떻게 데이터를 저장할지를 관리한다. - 디스크의 읽고 쓰기를 제어해 데이터를 영구적으로 저장하는 것을 보조한다. 4. 트랜잭션 매니저 & 락 매니저 - DBMS의 내부의 추상화된 실행 단위인 트랜잭션을 관리해 정합성을 유지하고, - 필요하다면 데이터에 락을 걸어 다른 사람의 요청을 대기시킨다. 5. 리커버리 매니저 - 장애, 혹은 데이터가 손상되었을 때 이를 복구하는 기능을 제공한다. - 백업, 복구 등..

모두의 네트워크 01
Review 2021. 4. 7. 21:51

컴퓨터 네트워크 컴퓨터 간의 연결 인터넷 전 세계의 큰 네트워크부터 작은 네트워크까지 연결하는 거대한 네트워크 패킷 컴퓨터 간의 데이터를 주고받을 때 네트워크를 통해 흘러가는 작은 데이터 조각 큰 데이터는 작은 패킷으로 분할한다. 비트 정보를 나타내는 최소 단위, 8비트를 1바이트라고 한다. LAN 건물 안이나 특정 지역을 범위로 하는 네트워크 WAN 인터넷 서비스 제공자(ISP)가 제공하는 서비스를 사용해서 구축한 네트워크 LAN은 WAN보다 범위가 좁지만 속도가 빠르고 오류가 발생할 확률이 낮다. 우선 인터넷 서비스 제공자와 인터넷 회선을 결정하고 계약한다. 인터넷 서비스 제공자와 인터넷 공유기로 접속한다. 접속 방식에는 유선 랜 방식과 무선 랜 방식이 있다. DMZ 외부에 공개하기 위한 네트워크 외..

article thumbnail
우아한 스프링 부트
Review 2021. 2. 20. 21:10

우아한 형제들에서 주관하는 테크 세미나인 "우아한 테크 세미나"에서 백기선 님의 스프링 부트 관련 세미나를 듣고 정리한 내용입니다. Speaker: 백기선 Whiteship Java, Spring 관련 기술을 공유하고 인터넷 강의를 만들고 있습니다. www.whiteship.me Spring Initialier SNAPSHOT 베타 버전. 최신 버전의 SNAPSHOT은 새로운 기능이나 최적화가 있을 수도 있지만 완벽하게 검증이 되지 않은 단계 M(Milestone) 정식 배포 전 테스팅 버전 RC(Release Candidate) 정식 배포되기 직전 버전. 특별히 문제가 없으면 GA로 넘어감. GA(Generally Available) 버전 뒤에 아무것도 붙지 않았거나, GA라고 붙은 것은 stable ..

웹을 지탱하는 기술 05
Review 2021. 1. 23. 19:29

리소스 지향 아키텍처 1. 웹 서비스에서 제공할 데이터를 특정한다 2. 데이터를 리소스로 나눈다 3. 리소스에 URI로 이름을 부여한다 4. 클라이언트에 제공할 리소스의 표현을 설계한다 5. 링크와 폼을 이용해 리소스와 리소스를 연결한다 6. 이벤트의 표준적인 코스를 검토한다 7. 에러에 대해 검토한다 RESTFul 웹 서비스 책에 의하면... 리소스 지향 아키텍처는 다음과 같은 특징을 가지고 있다. 1. 어드레스 가능성 URI만 있으면 리소스를 한결같이 가리킬 수 있다. 2. 접속성 리소스를 링크로 접속하여 하나의 애플리케이션을 이룬다는 성질은 하이퍼미디어로서의 웹의 근간이다. 링크를 따라갈 수 있어야 한다 3. 유니폼 인터페이스 4. 스테이트리스 성 트랜잭션 리소스 예를 들어 DELETE로 리소스 3..

웹을 지탱하는 기술 04
Review 2021. 1. 23. 19:00

POST vs PUT POST와 PUT은 둘 다 비슷한 기능을 구현할 수 있다. POST POST로 리소스를 작성할 경우, 클라이언트는 리소스의 URI를 지정할 수 없다. URI의 결정권은 서버측에 있다. 글을 포스팅하는 경우 그 글의 URI는 서버가 결정한다. PUT PUT으로 리소스를 작성할 경우, 리소스의 URI는 클라이언트가 결정한다. WIKI의 수정은 클라이언트가 결정한 타이틀이 그래도 URI가 된다. 이 경우는 PUT이 적합하다. 단 PUT은 리소스가 중복되어 덮어쓰기 되는 것을 방지하기 위해 클라이언트에서 사전에 URI 존재 여부를 체크해야 할 수도 있다. 일반적으로 클라이언트가 적합한 URI를 결정하기 위해선 클라이언트단이 서버 내부 구조를 숙지하고 있어야 한다. 이런 점 때문에 PUT이 ..

웹을 지탱하는 기술 03
Review 2021. 1. 23. 18:48

쿨한 URI는 변하지 않는다. 1. 프로그래밍 언어에 의존적인 확장자와 경로를 포함하지 않는다. . jsp ,. servlet 등 서버 구현 언어나 기술 스택이 변경되면 해당 URI를 사용할 수 없게 된다. 2. 메서드명과 세션 ID를 포함하지 않는다. . do 나 메서드명이 들어가 있으면 시스템 리팩터링 시 메서드명이 변경되면 바로 URI가 바뀌게 된다. 또 세션 ID가 URI에 있으면 URI는 매번 변경되기 때문에 바람직하지 않다. 3. URI는 리소스를 표현하는 명사로 한다. HTTP는 메서드로 URI를 다룬다. 즉 메서드가 동사, URI가 명사인 관계이다. 그러므로 URI는 가능하면 명사로 설계해야 한다. 이 말은 URI에 동사가 들어가는 것을 지양하라는 말과 같다. 요약 1. URI에 프로그래밍..