Teno's Lab
Preview Image

[Computer Structure] Register

🧩 Memory Hierarchy 현대 컴퓨팅 아키텍처에서 성능의 병목은 더 이상 연산 속도 그 자체가 아닙니다. 문제는 ‘데이터의 이동’입니다. 프로세서가 아무리 강력한 ALU(Arithmetic Logic Unit)를 보유하고 있더라도, 연산에 필요한 피연산자를 적시에 공급받지 못하면 CPU는 그저 무의미한 클록 사이클을 소모하며 대기할 뿐입니다...

Preview Image

[Web] REST vs GraphQL vs gRPC

소프트웨어 아키텍처의 역사는 곧 ‘소통의 경계’를 획정해온 기록입니다. 초기의 모놀리식 시스템 내부에서 함수 호출(Function Call)로 해결되던 데이터 흐름은, 시스템이 물리적으로 파편화되고 네트워크라는 불확실한 매개를 사이에 두게 되면서 거대한 전환점을 맞이했습니다. 이제 통신은 단순히 바이트를 옮기는 행위를 넘어, 서로 다른 생존 주기를 가...

Preview Image

[Web] REST API와 성숙도 모델

도시를 설계할 때 도로의 폭, 건물의 용도 제한, 상하수도의 위치를 규정하는 법규는 창의성을 제한하는 것처럼 보입니다. 그러나 이러한 제약 덕분에 수백만 명의 시민이 예측 가능한 방식으로 상호작용하며 거대한 유토피아를 유지합니다. 소프트웨어 아키텍처의 세계에서 REST(Representational State Transfer)는 바로 이 ‘도시 계획 ...

Preview Image

[OS] Process와 Thread

🧩 Process 현대 운영체제의 가장 거대한 마법은 ‘독점의 환상’을 만들어내는 데 있습니다. 수십 개의 앱이 동시에 돌아가고 있음에도, 각 프로그램은 마치 자신이 CPU 전체를 점유하고 무한한 메모리 공간을 홀로 사용하는 것처럼 행동합니다. 운영체제는 이 가련하고 이기적인 프로그램들에게 Process라는 추상화된 무대를 제공함으로써 이 환상을 현...

Preview Image

[System Design] Layered에서 Vertical Slice까지

우리는 흔히 아키텍처를 논할 때 모놀리식 마이크로서비스와 같은 배포 구조를 떠올립니다. 그러나 진정한 의미의 아키텍처는 단일 프로세스 내의 코드 조직화(Internal Structure)에서 시작됩니다. 내부 아키텍처의 핵심 목표는 화려한 패턴 적용이 아닙니다. 개발자가 코드를 읽을 때 겪는 인지 부하(Cognitive Load)를 줄이고, 관련된 ...