전체 글
-
가상 머신(Virtual Machine)이란?SE Concepts 2023. 11. 16. 00:13
가상 머신은 가상화의 기반이 되는 컴포넌트입니다. 가상 머신은 가상화 전의 bare-metal에서의 운영체제와 애플리케이션이 담기는 곳으로 하이퍼바이저 위에서 동작합니다. 가상 머신 내부에서 보면 물리 서버 내부와 별로 다를게 없습니다. 그러나 가상 머신 외부에서 살펴보면, 물리 서버와 동일하게 동작하도록 수많은 처리가 진행되고 있는 것을 볼 수 있습니다. 이 글에서는 가상 머신이 무엇인지, 가상 머신에서의 CPU, Memory, Network, Storage의 처리는 기반한 하이퍼바이저, 하드웨어와 어떻게 동작하는지 알아보도록 하겠습니다. 가상 머신이란? VM(가상 머신)은 물리서버와 동일하게 운영체제를 지원하고, 애플리케이션이 접근할 수 있는 여러 리소스를 설정할 수 있습니다. 하지만 물리서버와는 달..
-
Hypervisor(하이퍼바이저)란?SE Concepts 2023. 11. 15. 00:37
넓은 관점에서, 하이퍼바이저는 리소스의 최종 결정권자입니다. 개념적으로는 물리적인 서버와 서버에서 실행되는 가상 머신(virtual machine)의 중간에 존재하는 소프트웨어 later로 존재하는데요. 하이퍼바이저는 리소스 할당 뿐만 아니라 가상 환경, 가상 네트워크, 클러스터링 등을 기반해 동작하는 가상 머신에 제공해줍니다. 정확히 이해하기 위해서는 무엇보다도 그 이름의 히스토리를 살펴보는게 좋은데요. 초기에 가상 머신 모니터(Virtual machine monitor)가 특정 목적을 위해 생성되었습니다. 그것이 더욱 발전해서 가상 머신 매니저(Virtual machine manager)로 불리게 되었습니다. 이후 VMM 대신에 지금의 하이퍼바이저라는 이름으로 부르게 되었습니다. 초기에 엔지니어들이 ..
-
콜드 스타트 이슈 - 어떻게 네트워크 프로덕트를 성장시킬 것인가?SE General 2023. 11. 12. 12:10
콜드 스타트 이슈(Cold Start Problem)는 말그대로 웜업(Warm-up)이 되지 않은 - 갓 출시된 프로덕트를 인지시키고, 각인시키고, 성장시키는 문제를 말합니다. 그러한 프로덕트 중에서도 특히, 네트워크 효과에 기반한 프로덕트에 해당되는데요. 용어를 만든 앤드류 첸은 운전 서비스 제공자와 이용자의 문제를 해결하는 Uber에서 초기 경험을 쌓았습니다. 그리고 이러한 문제가 Uber 뿐만 아니라 플랫폼의 성격을 지닌 다양한 IT 프로덕트, 그리고 다른 산업에서도 발생한다는 사실을 깨달았습니다. 그는 이후 모습은 조금씩 다르지만 Uber, Airbnb, Facebook, Dropbox, Slack 등 다양한 프로덕트의 성장과정에서의 문제와 그것으로 인한 성공 및 실패를 네트워크의 라이프사이클..
-
코딩 실력을 복리로 늘리는 최고의 방법SE General 2023. 9. 27. 23:18
(for native Korean speakers) 은 바로 영어입니다. 개인적으로는 개발자 커리어 초반에는 느리더라도 모든 문서를 영어만 읽고, 영어강의를 듣고, 코드리뷰를 영어로 해야한다고 생각하는데요. 그렇다면 왜 그런지, 뇌과학 논문 (1) 및 grey materials에 기반해 알아보겠습니다. Python 학습속도에 큰 영향을 주는 언어적성 이미지에서 보시 듯, Python 프로그래밍 언어에 대한 학습속도를 예측하는 모델(50~72%)을 설명하는 변수는: 1. 유동지능(fluid intelligence)과 작업기억(working memory)이 34% 2. 언어적성(L2 aptitude)가 17% 3. resting-state EEG power in beta and low-gamma bands ..
-
OAuth 2.0 for Native Apps, RFC-8252 (번역)SE General 2023. 9. 3. 01:31
아래는 개인적인 공부를 목적으로 RFC-8252인 OAuth 2.0 for Native Apps를 번역한 내용입니다. 이상한 부분 피드백 주시면, 감사히 수정하겠습니다 :) 네이티브앱을 위한 OAuth 2.0 Abstract 네이티브앱으로부터의 OAuth 2.0 인가 요청은 반드시 주로 유저의 브라우저인 외부유저에이전트를 통해 이뤄져야 합니다. 이 스펙은 왜 그러한지에 대해 보안적, 사용성적인 이유를 다루고, 네이티브앱과 인가 서버가 이 베스트프랙티스를 어떻게 구현할 수 있는지를 설명합니다. 1. Introduction OAuth 2.0 인가 프레임워크를 설명하는 RFC6749에선, 인가 엔드포인트와 연동되는 native apps를 위해 2가지 방법을 제시합니다: 임베디트 유저에이전트(embedded u..
-
회고 - 라인넥스트에서의 2023년 상반기Routine 2023. 7. 23. 23:59
작년 10월의 회고 이후 많은 시간이 흘렀습니다. 자칫 늘어지기도 쉬운, 라인에서 2년이 가까워지는 시점에 2023년에 대한 회고(기업 관련 내용을 제외하고)를 작성해봅니다. 무엇을 했는가 기존과 같이 Kotlin, Spring Webflux, MySQL, Redis, Kafka를 사용하여 백엔드 개발을 진행했습니다. 특징적인 프로젝트로는 계정계 통합 운영 이슈 해결 개선 요청사항 구현 일부 신규 모듈 개발 사내 툴을 이용한 데이터 플랫폼 셋업 정도인 듯 하네요. 무엇을 배웠는가 '작년 10월의 나' vs '현재의 나'를 비교해보자면 시간이 흐르며 까먹고 퇴화된(?) 것들도 있을 것이고, 9개월이라는 시간을 보내며 배우고 성장한 부분도 있을텐데요. 먼저 조금 퇴화된 부분이라고 생각되는 것은 현재의 환경에..
-
주니어 개발자에게 추천하는 책 TOP 12SE General 2023. 7. 23. 23:24
5년차 엔지니어가 +100개 중에 꼽은, 온라인 CS 강의 TOP 5 (개발자 온라인 강의 추천) 5년 동안 일하며 온/오프라인의 많은 프로그래밍 / CS 강의를 들었습니다. Udemy, Udacity, Coursera, FastCampus, Inflearn 등등. 이번 글에서는 현재 시점에 가장 좋았다고 생각되는 온라인 CS 강의 TOP 5를 정 kadensungbincho.tistory.com 5년차로 접어드는 동안, 대학에서 CS를 전공하지 않았기에 '비는 지식'을 채우기 위해 노력했었는데요. 이 글에서는 읽었던 +100권 중 CS, Software engineering 책들 중 가장 좋았던 11권을 뽑아보았습니다. (그렇기에 아무래도 '취업'이 목표인 분들에게는 조금 거리가 있는 책들일 수 있겠네..
-
5년차 엔지니어가 +100개 중에 꼽은, 온라인 CS 강의 TOP 5 (개발자 온라인 강의 추천)SE General 2023. 7. 21. 23:19
5년 동안 일하며 온/오프라인의 많은 프로그래밍 / CS 강의를 들었습니다. Udemy, Udacity, Coursera, FastCampus, Inflearn 등등. 이번 글에서는 현재 시점에 가장 좋았다고 생각되는 온라인 CS 강의 TOP 5를 정리해보겠습니다. Computer Structure - Quantum Leaps' Modern Embedded Systems Programming [1] '기초 컴퓨터 시스템 책과 한 가지 언어 공부를 마치고, 바로 이 강의를 들었으면 좋았을 것'이라는 생각이 드는 강의입니다. 임베디드 시스템 프로그래밍 강의를 통해, 코드가 실제로 어떻게 Machine 레벨(CPU, Register, Memory)에서 동작하는지 꼼꼼하게 배울 수 있는데요. 특히, 유사한 관점..