개인 공부/전공 지식 정리

개인 공부/전공 지식 정리

[Datebase] index 원리 (B+ Tree)

index 는 데이터베이스 테이블의 검색 속도를 향상시키기 위한 방법 중 하나이다. 많은 예시에서 책갈피로 불리는 index에 대해서 자세히 알아보자. 사진에서 볼 수 있듯이, 테이블에 Full Scan 으로 값을 찾기 전 빠르게 해당 데이터의 위치를 찾아 효율을 높이기 위해서 index를 사용한다. 다만 SELECT 를 제외하고, UPDATE, DELETE, INSERT 명렁어를 사용하는 sql일 경우 오히려 성능이 저하될 수 있다. 해당 데이터가 변경되면 인덱스에도 적용해야하기 때문에 추가적인 작업이 필요하기 때문이다. 결론은 해당 서비스 로직과 데이터베이스 테이블의 특징을 면밀히 분석해 index 를 적용했을 때 성능이 향상될 거 같다고 판단될 때 사용해야한다. 인턴을 경험해보니, 대규모 데이터의 ..

개인 공부/전공 지식 정리

[Network] WEB vs WAS

WEB 서버 웹서버란 크게 두가지 측면으로 나눌 수 있다. 하드웨어 : 웹사이트의 정적 컴포넌트 파일을 저장한다 (html, css, javascript). 또한 요청에 맞게 해당 파일들을 건내준다. 소프트웨어 : 클라이언트로부터 HTTP 요청을 받아들이고, 해당 파일에 어떻게 접근하는지를 관리한다. WAS WAS 란 (Web Application Server) 의 약자로, 인터넷 상에서 HTTP 를 통해 클라이언트 장치에 애플리케이션을 수행해주는 미들웨어이다. 웹 서버와 웹 컨테이너를 합친 구조이며, 보통 동적 서버 콘텐츠를 수행함으로서 WEB 서버와는 구분된다. 또 데이터베이스 서버와 함께 수행된다. 차이점 구조상 다른 점은 웹 컨테이너의 유무이다. WEB 서버는 HTML 문서와 같은 정적 컨텐츠를 ..

개인 공부/전공 지식 정리

[Socket] WebSocket 이란 ?

WebSocket 이란 ? HTTP 와 같은 Transfer Protocol 이다. 즉 통신하기 위해 지켜야 하는 규약이다. HTTP 와 다른 점은, 서버와 클라이언트 간에 효율적인 양방향 통신을 위한 규약이라는 점이다. 통신이 끝난 후 연결을 끊지 않기 때문에, 데이터를 보낼 때 추가적인 액션 ( 버튼을 누른다거나 ) 이 필요가 없다. HTML5 환경에서 자주 쓰인다고 한다. Web Socket과 TCP 웹 소켓은 연결 요청에 대해 HTTP를 통해 Switching 및 HandShaking이 이루어진다. TCP는 Binary 데이터만 주고 받을 수 있으나, 웹 소켓은 Binary와 Text 데이터도 주고 받을 수 있다. Web Socket과 HTTP 웹 소켓 연결할 때 HTTP 요청으로 시작하나 ( 보..

개인 공부/전공 지식 정리

[Socket] Http 통신과 Socket 통신의 차이점

HTTP 통신 HTTP란 HyperText Transfer Protocol 의 약자로, 말 그대로 HTML 파일 보내기 위한 프로토콜이였다. 현재는 JSON 형태로 많이 보낸다. 클라이언트와 서버간의 단방향 통신이며, 클라이언트 요청에 대한 서버의 응답으로 이루어져 있다. 통신이 끝난 후 대부분 연결을 끊는다. 소켓 통신 소켓 통신이란 클라이언트와 서버 간의 양방향이 가능한 통신 방식이다. 서버도 클라이언트에게 응답 값을 요청할 수 있다. 요청이 끝나도 연결이 유지된다. 데이터를 자주 주고 받는 스트리밍, 채팅 통신에 유리하다.

개인 공부/전공 지식 정리

[Git] Git - 기초 키워드 정리

매번 찾아보기 시간이 아까워서 내게 필요한 Git 키워드를 정리해보겠습니다. 가장 기초적인 키워드를 제가 사용한 순서대로 정리하겠습니다. clone 프로젝트를 이어받거나, 유지보수, 테스트 하는 경우 clone 키워드를 가장 처음에 사용하였습니다. 깃허브에 있는 코드 url 을 복사해 다음과 같은 명령어로 코드를 가져왔습니다. $ git clone [url] remote 코드를 가져온 후, 파일의 원격 저장소 주소를 확인할 필요가 있습니다. 다음과 같은 명령어로 깃 원격 저장소 주소를 확인하면 됩니다. $ git remote -v remote 명령어는 클론 받은 코드가 아닌 새롭게 생성한 프로젝트를 원격 저장소에 추가할 때에도 사용됩니다. 다음과 같은 명령어로 새로운 url의 origin 이름을 가진 원..

Da2isy
'개인 공부/전공 지식 정리' 카테고리의 글 목록