반응형

전체 135

[OS] 프로세스 & 쓰레드(Process & Thread)

#개요 CS를 공부할때는 언어에 대해서 1차적인 고민을 해야한다. 우리는 PC를 사용할때 프로그램(Program)을 사용한다. 프로그램(Program)을 실행하여 원하는 동작을 구현하는데 우리는 이 단위를 프로세스(Process)라고 부른다. 즉, 실행중인 프로그램이 프로세스이다.(Process is a program in execution) 위키백과를 살펴보며 한번 해석해보자. 프로그램은 일반적으로 하드 디스크 등에 저장되어 있는 실행코드를 뜻하고, 프로세스는 프로그램을 구동하여 프로그램 자체와 프로그램의 상태가 메모리 상에서 실행되는 작업 단위를 지칭한다. 예를 들어, 하나의 프로그램을 여러 번 구동하면 여러 개의 프로세스가 메모리 상에서 실행된다. 프로세스(process)는 컴퓨터에서 연속적으로 실..

[Network] Load Balancer(부하 분산 장치)

#개요 이번에 프로젝트를 하다 로드밸런서가 무엇인지 정확히 잡고 넘어가야했다. 네트워크쪽에서는 자주 등장하는 용어이고 사용하는 장치이다. Load Balancer(부하 분산 장치) 즉, 로드밸런서라고 칭하겠다. 이 로드밸런서가 등장하게 된 계기 부터 알아보면 더 쉽게 이해가 가능하다. 우리가 서버에 트래픽이 부하(트래픽)이 많이 걸리면 우리는 서버의 사양을 늘리거나 증축해서 설비를 해야한다. 서버의 사양을 늘리는 것(Scale-up), 서버를 증축하여 설비하는 것(Scale-out)이라고 부른다. 다시 설명하면, AWS EC2를 기준으로 t3.small ➡️ t3.large로 간다면 Scale-up은 수직 스케일링 t3.small ➡️ t3.small, t3.small 로 간다면 Scale-out 수평 ..

[Certificate] CKA 시험 신청

많은 분들이 K8S를 공부하면서 자격증 시험인 CKA 도전을 한다. 일단, 나도 K8S에 입문을 했고 발을 드려두었기 때문에 한번 시험을 봐야겠다고 생각했다. 근데 시험 비용이 만만치가 않았다ㅠㅠ 395달러로 환화로 510,986원이다 거의 51만원정도 되는 금액의 자격증 시험이다.... 진짜 취준생에게는 말도 안되고 회사에서 지원을 안해준다면 말도 안되는 가격이라서 에효... 반포기 상태였다... 그래서 항상 할인을 엿보고 있었는데 그런데 마침 연말 홀리데이 할인으로 35% 할인을 해주고 있었다!!! 홀리데이 할인을 하는데 부랴부랴 막차를 타서 이미 시간이 캡쳐를 못한게 너무 아쉽다ㅠㅠ 기억을 거슬러 올라가보면 UTC 시간으로 21일 00시까지였는데 다행이 한국시간으로만 21일였고 현지시간은 20일이여..

Certificate/CKA 2023.12.26

[Spring] Rest Doc 활용하기

MSA 프로젝트를 진행하다가 API 문서에 대해서 팀원분이 Swagger를 쓰겠다고 했을때, 저는 안되는 이유에 대해서 설명을 해드렸습니다. " 서비스가 쪼개질때마다 swagger 문서가 production에 생길텐데, 프론트 앤드 엔지니어 입장이라면 원하는 API문서를 찾을때까지 뒤지는건 생산성이 떨어진다." 그러면서 API문서 구축하시는 분께 다른 방법이 있는지 찾아달라고 부탁드렸습니다. (정 없다면 스프레드 시트로 작성해야죠.....!!) 아니다 다를까 MSA가 화두되고 있는 지금 다른 방법이 아예 없지는 않았습니다. 팀원분이 하루만에 방법을 찾아오셨더라고요 해당 방법은 아래와 같았습니다. 서비스별 Rest Docs을 생성한다. 생성된 Rest Doc을 Open API 형태의 Json 포맷으로 만다..

Framework/Spring 2023.12.13

블로그 포스팅 회고

블로그를 잘 작성하는 중에 이미 많은 분들이 블로그 포스팅을 해놓은 것을 항상 보면 블로그를 포스팅 할때마다 이렇게 블로그 포스팅을 하는게 맞나 싶은 생각이 든다. 나보다 더 정리를 깔끔하게 하고 여러명이 컨트리뷰터로 참여한 기술 인터뷰를 위한 사이트도 있고 블로그를 블로그 요약 참고 자료로 쓰면서 공부하는 나를 보면 한심스럽다. 제대로 난 공부라는 것을 하고 있는가? 한가지 개념에 포함되어 나온 가지형식의 개념들을 이해하나? 많은 선배 엔지니어들이 왜 이렇게 설계 했다고 생각하나? 세종대왕이 "대왕"이 될 수 있던 이유는 수 많은 양의 독서가 아닌 "필사"에 있다고 한다. "책 한권을 100번을 필사했다는 말이 있을 정도" 모든 것을 요약본으로 공부하고 요약집을 만들려고 하는 습관 자체가 배어버렸다. ..

[Algorithm] 정렬 - 힙정렬(Heap Sort)

#요약 2023.11.20 - [Computer Science/Data Structure] - [Data Structure] 비선형 - 힙(Heap) 최대 힙, 최소 힙 트리를 구성하여 정렬하는 방법 내림차순 정렬 ➡️ 최대 힙 구성 오름차순 정렬 ➡️ 최소 힙 구성 [Data Structure] 비선형 - 힙(Heap) #요약 우선순위 큐(Priority Queue)를 위해 만들어진 자료구조 ※ 우선순위 큐 (Priority Queue) : 우선순위의 개념을 큐에 도입한 자료구조 데이터들이 우선순위를 갖고 있으며 우선순위가 높은 순서대 blaj2938.tistory.com #구체적 설명 정렬해야할 n개의 요소들로 최대 힙(내림차순 정렬을 위해)을 만든다. 최대 힙(max heap): 부모 노드의 key..

Algorithm/Concept 2023.11.22

[Report] 프로젝트에서 문서 관리법!

회사를 다니면서 인프라쪽 관련해서 프로젝트를 할 수 있는 기회가 생겨서 참여를 하게되었습니다. 토이프로젝트가 처음은 아니지만 그래도 회사에서 기획도 잠깐하고 개발도 잠깐했던 사람으로써 두번 다시 같은 실수가 일어나지 않기를 바라며... 의사소통에 중간단계인 문서화를 통해 주먹구구식 프로젝트가 아닌 진행 상황을 팀원들과 공유하며 단계적으로 나아가는 프로젝트를 하면 진행하기로 팀원들에게 동의를 구했습니다!! 물론 여기에 작성하는 내용이 맞는 내용은 아니고 단계적으로 피드백 받고 수용해 나아가며 진행할 예정입니다!! 일단, 따로 기획자가 없음을 인지하고 읽어주시면 감사하겠습니다 첫번째!! WBS(Work Breakdown Structure) 업무 분업 구조 또는 작업 분해 구조를 작성하기로 했습니다. 저는 이..

[Data Structure] 비선형 - 힙(Heap)

#요약 우선순위 큐(Priority Queue)를 위해 만들어진 자료구조 ※ 우선순위 큐 (Priority Queue) : 우선순위의 개념을 큐에 도입한 자료구조 데이터들이 우선순위를 갖고 있으며 우선순위가 높은 순서대로 높은 데이터가 pop 되는 구조 이용사례 1. 시뮬레이션 시스템 2. 네트워크 트래픽 제어 3. 운영 체제 스케듈링 #구체적 설명 완전 이진 트리로 우선순위 큐를 위해 만들어진 구조 여러개의 데이터 중 Minum 과 Maximum을 빠르게 찾을 수 있다. 느슨한 정렬(반정렬) 상태를 유지 중복된 값을 허용한다 힙의 종류 최대 힙(Max Heap) 부모 노드의 키 값이 자식 노드의 키값보다 크거나 같은 완전 이진 트리 key(부모 노드) >= key(자식 노드) 최소 힙 (Min Heap..

[Data Structure] 비선형 - 이진 트리(Binary Tree)

#구체적인 설명 그래프의 일종 ➡️ 한 노드에서 시작해서 다른 정점(Edge)들을 순회하여 자신에게 돌아오는 순환이 없는 연결 그래프 부모 - 자식 관계로 정의가 가능 부모에서 자식으로 간선이 이어져 있는 방향성이 있는 그래프 용어 정리 노드: 트리를 구성하는 기본 원소 루트 노드: 트리에서 부모가 없는 최상위 노드, 트리의 시작점 부모 노드: 루트 노드 방향으로 직접 연결된 노드 자식 노드: 루트 노드 반대 방향으로 직접 연결된 노드 형제 노드: 같은 부모 노드를 갖는 노드 리프 노드: 루트 노드를 제외한 차수가 1인 정점 ➡️ 말단, 단말에 있는 노드 경로: 한 노드에서 다른 노드로 이르는 길 사이에 있는 노드들의 순서 길이: 출발 노드에서 도착 노드까지 거치는 간선(Edge)의 갯수 깊이: 류투 경..

반응형