본문 바로가기
  • 저희는 평생 개발할 운명이걸랑요

Tech.log56

[Stable Sort(안정 정렬) vs Unstable Sort(불안정 정렬)] 2021.05.10 - [Tech.log/알고리즘] - [정렬 방법] 정렬을 잘 모른다면, 해당 글을 먼저 참고하자. Stable Sort(안정 정렬) 동일한 정렬 기준을 가진 것은 정렬을 한 후에 위치가 동일하다. ex)5 9 3’ 7 2 3 => 2 3’ 3 5 7 9 Bubble Sort(버블 정렬)Insertion Sort(삽입 정렬)Merge Sort(합병 정렬) Unstable Sort(불안정 정렬) 동일한 정렬 기준을 가진 것은 정렬을 한 후에 위치가 동일하지 않을 수 있다. ex)5 9 3’ 7 2 3 => 2 3 3’ 5 7 9 Selection Sort(선택 정렬)Quick Sort(퀵 정렬)Heap Sort(힙 정렬) UnStable한 이유 Selection Sort(선택 정렬) ex.. 2021. 5. 29.
[쿠키(Cookie)와 세션(Session)] HTTP(Hypertext Transfer Protocol)는 비연결성(Connectionless)과 비상태성(Stateless)의 특징을 가지고 있다. 이로인해 사용자를 식별을 하기위한 보완 사항으로 쿠키와 세션을 사용한다. 쿠키(Cookie) 웹 사이트에 접속할 때 생성되는 정보를 담은 임시 파일이다. 쿠키의 데이터 형태는 Key 와 Value로 구성되고 String 형태로 이루어져 있다. 사용자를 식별하는 용도로 사용한다. 쿠키는 서버를 대신해서 이러한 정보들을 웹 브라우저에 저장(정확히는, 웹 브라우저를 이용하고 있는 컴퓨터에 저장)하고 사용자가 요청을 할 때 그 정보를 함께 보내서 서버가 사용자를 식별할 수 있게 헌다. 쿠키의 사용 목적 1. 세션 관리(Session Management) 로그인.. 2021. 5. 24.
[DNS round robin 방식] DNS DNS(Domain Name System)는 서버는 클라이언트가 요청한 도메인 주소에 대한 실제 IP 주소를 찾아주는 컴퓨터입니다. 클라이언트가 목적지 서버로 접속하는 과정 1.사용자가 웹 브라우저에 example.com을 입력하여 웹 페이지 탐색을 시도한다. 2.클라이언트 컴퓨터는 example.com에 대한 IP 주소를 찾기 위해 DNS 서버에 물어(질의, 쿼리, Query)본다 3..DNS 서버는 example.com에 대한 IP 주소를 찾고 이를 다시 클라이언트로 알려준다. 4.클라이언트는 example.com에 대한 IP 주소를 얻었으므로 해당 IP 주소로 연결을 시도한다. 5.클라이언트는 효율성을 위해 일정 기간동안 example.com에 대한 IP 주소를 로컬에 캐시해 놓는다. DNS.. 2021. 5. 23.
[Thread-safe] Thread-safe 멀티 스레드 프로그래밍에서 일반적으로 어떤 함수나 변수, 혹은 객체가 여러 스레드로부터 동시에 접근이 이루어져도 프로그램의 실행에 문제가 없음을 뜻한다. ex)하나의 함수가 한 스레드로부터 호출되어 실행 중일 때, 다른 스레드가 그 함수를 호출하여 동시에 함께 실행되더라도 각 스레드에서의 함수의 수행 결과가 올바로 나오는 것으로 정의한다. Thread-safe를 지키기 위한 방법 1. Re-entrancy 어떤 함수가 한 스레드에 의해 호출되어 실행 중일 때, 다른 스레드가 그 함수를 호출하더라도 그 결과가 각각에게 올바로 주어져야 한다. 2. Thread-local storage 공유 자원의 사용을 최대한 줄여 각각의 스레드에서만 접근 가능한 저장소들을 사용함으로써 동시 접근을 막.. 2021. 5. 22.