일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 아마조니언
- BFS
- 나는 아마존에서 미래를 다녔다
- 삼성인 아마조니언 되다
- 동적 프로그래밍
- 프로그래머스
- 김태강
- 블린이
- minimum path sum
- technical debt
- list of list
- Unique Paths
- No Rules Rules
- mysql #numa #swap #memory
- Python
- LongestPalindromicSubstring
- 파이썬
- 리트코드
- 와썹맨
- 그거봤어?
- 트리
- 알고리즘
- leetcode
- 독후감
- Envoy
- Dynamic Programmin
- 삼성역량테스트
- 규칙없음
- 기술적 채무
- 리스트의 리스트
- Today
- Total
목록분류 전체보기 (53)
개발자가 되고 싶은 준개발자
#디스크 접근 방식 Sequential Access mySQL은 디스크에 저장된 데이터에 접근할 때 페이지 단위로 접근한다. 페이지는 데이터를 검색하는 최소 단위이다. 물리적으로 인접한 페이지를 순차적으로 읽는 방식으로 보통 테이블 풀 스캔에 사용된다. 데이터를 찾고자 이동하는 디스크 헤더의 움직임을 최소화하여 작업 시간과 리소스 점유 비용을 줄일 수 있다. Randon Access 물리적으로 떨어진 페이지들에 임의로 접근하는 방식으로 페이지가 위치한 물리적인 위치를 고려하지 않고 접근한다. 디스크 헤더가 정해진 순서 없이 이동하므로 디스크의 물리적인 움직임이 많아 오래 걸린다. # 오브젝트 스캔 유형 테이블 풀 스캔 인덱스를 거치지 않고 테이블을 처음부터 끝까지 훑어보는 스캔 방식이다. 테이블 풀 스캔..
#가격 mysql은 community와 enterprise 버전이 있고, community 버전은 무료이다. 이에 비해 오라클은 가격이 비싸고 무료 버전이 없다. # 스토리지 오라클 DB는 통합된 스토리지 하나를 공유하여 사용하나 MySQL은 물리적인 DB 서버마다 독립적으로 스토리지를 할당하여 구성한다. 따라서 오라클은 공유 스토리지를 사용하므로 어느 DB 서버에 접속하여 SQL문을 수행하더라도 같은 결과를 출력한다. MySQL에서도 복제 구성을 통해 DB 여러 대가 같은 데이터를 갖도록 구성할 수 있다. 단 이 경우에는 대부분 master-slave 구조로 구축을 하기 때문에 쓰기 작업은 한 서버에서만 발생하고, 나머지 서버에서는 읽기 작업만 하는 구조를 갖는다. master-slave 구조로 구축할..
문제 https://programmers.co.kr/learn/courses/30/lessons/42746# 코딩테스트 연습 - 가장 큰 수 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 programmers.co.kr 테스트 케이스 Parameters Return [6, 10, 2] "6210" [3, 30, 34, 5, 9] "9534330" [121, 12] "12121" [0, 0, 0] "0" [51, 15] "5115" 여기서 가장 중요한 케이스는 마지막 [51,15]였다. 풀이 1. Brute ..

Nginx, Wsgi에 대한 정확한 개념을 모르겠어서 이번 기회에 정리해 보고자 한다. Wsgi(발음: 위즈기)가 도대체 무엇인가? Wsgi(web server gateway interface)는 web application(ex. Django, Flask...)과 web server(ex. Apache, Nginx...) 간의 통신 규약으로 파이썬 언어로 작성한다. 웹 서버와 웹 어플리케이션이란 무엇인가? web server 사용자가 브라우저에 URL을 입력하면, 브라우저는 웹 서버에 웹페이지를 보내달라는 요청을 한다. 웹 서버는 HTTP 요청을 파싱한 후, 정적 컨텐츠(HTML, CSS, PNG...)을 저장하고 있다가 브라우저에게 보내준다. (대표적으로 Apache, Nginx가 있다.) 브라우저와..

1. Vagrant로 VM 준비 VirtualBox를 설치. VirtualBox: 오라클이 제공하는 다기능 하이퍼바이저(가상화 소프트웨어)로 많은 호스트 OS와 게스트 OS를 지원. git clone https://github.com/kodekloudhub/certified-kubernetes-administrator-course.git cd certified-kubernetes-administrator-course VirtualBox가 설치되면 Vagrant를 이용하여 가상 머신을 조작. 레포지토리(https://github.com/kodekloudhub/certified-kubernetes-administrator-course)에 Vagrantfile이 이미 정의되어 있음. Vagrant: 버추얼박스..

네트워크는 컴퓨터들을 연결해 서로 간의 자료를 공유할 수 있게 해주는 방법이다. 종류는 네트워크의 범위에 따라 LAN < MAN < WAN로 나뉜다. LAN (Local Area Network): 소규모. MAN (Metropolitan Area Network): 중규모. WAN (Wide Area Network): 대규모. 국가, 대륙 간의 장거리 전송이 가능. ex) 인터넷. 그렇다면 네트워크 안에 수많은 장비들이 서로 연결되어 있는데, 이들은 이 방대한 네트워크 안에서 서로 어떻게 통신할까? 네트워크는 논리적으로 2 부분으로 나눈다. 위의 그림에서 라우터를 기준으로 네트워크가 나뉘는데, 라우터의 오른쪽 부분은 내부 네트워크라 부르고 외쪽 부분은 외부 네트워크라 부른다. 내부 네트워크는 로컬 네트워크..

노드 보수 소프트웨어 업데이트나 보안 패치를 적용할 때 노드를 클러스터에서 빼야 할 일이 생김. 노드를 보수(shutdown)하면 그 위에 돌아가는 pod들은 어떻게 될까? 노드를 클러스터에서 제거하지 않는 이상 쿠버네티스가 알아서 서버가 지정한 시간(시간은 eviction timeout)보다 오래 내려가 있으면 그 위의 pod를 죽이고, 다른 노드 위에 새로 띄움. kube-controller-manager --pod-eviction-timout=5m0s (만약에 eviction timeout으로 설정한 시간 이후에 다시 노드가 살아서 올라온다 해도 그 위에 스케줄링되었던 pod는 이미 다른 노드로 옮겨간 상황이므로 당장 돌아가는 pod는 없음.) 노드를 클러스터에서 뺀 후에 보수할 수 없을까? 노드 ..
쿠버네티스의 목적은 여러 어플리케이션들을 컨테이너 형태로 잘 운영하기 위해서이다. 요즘의 어플리케이션들은 규모가 크기 때문에 대부분 여러 개의 컨테이너로 구성하게 되고, 쿠버네티스는 이런 여러 컨테이너들간의 소통 및 관리(orchestration)를 용이하게 해준다. 어플리케이션을 선박의 컨테이너에 비유해 보면 쿠버네티스의 Worker 노드에서는 이런 컨테이너들을 실행하게 되고, Master 노드에서는 이런 컨테이너들을 어느 node에 실을지, 노드들의 상태는 어떤지 등을 중앙에서 관리해 주는 역할을 한다. 마스터 모드 구성요소 ETCD : distributed reliable key-value store; simple, secure, fast - 선박에는 여러 컨테이너들이 실릴 텐데 이런 컨테이너들이 ..
현상 Ha deployment failed · Issue #21926 · rancher/rancher (github.com)

문제 16. 3Sum Closest [Medium] Given an array nums of n integers and an integer target, find three integers in nums such that the sum is closest to target. Return the sum of the three integers. You may assume that each input would have exactly one solution. Example 1: Input: nums = [-1,2,1,-4], target = 1 Output: 2 Explanation: The sum that is closest to the target is 2. (-1 + 2 + 1 = 2). Constrai..