인프라엔지니어의 교과서/개정 2판

 

요즘 네트워크 기능을 사용하지 않는 애플리케이션이나 서비스가 있을까? 네트워크는 ISO OSI 7계층 모델을 기반으로 동작한다. 각 계층마다 주어진 역할이 있고, 그 역할을 담당하는 장비와 인프라들이 존재한다. 이 책은 인프라에 대한 아주 자세한 설명은 없지만, 기본적인 개념을 탑재할 수 있게 도와주는 책이다. 개발자라면 한번쯤 읽어두면 좋을 것 같은 내용이다. 개발자가 왜 인프라를 이해해야 하냐고 반문할 수도 있겠다. 하지만 인프라에 대한 이해없이 그 위에서 동작하는 서비스를 개발할 수 있을까?

 

<인프라 엔지니어의 교과서>의 저자인 사노 유타카는 라인의 창업멤버이다. 선배 엔지니어로써 후배들에게 나누고 싶은 이야기를 책으로 잘 정리하였다. 일본 서적 특유의 느낌이 있는데, 간결하면서 요약된 지식이 잘 정리되어 있다. 저자는 인프라를 안정적으로 운영하려면 매일 많은 의사 결정이 필요하고, 보다 정확하고 빠른 의사 결정이 이루어지려면 책임감과 기술력, 정보 수집력 및 결단력이 필요하다고 이야기한다.  또한 실무 경험의 중요성도 언급하고 있다. 일반적인 운영 조작은 이론으로도 통달할 수 있지만 장애 대응에 대한 경험을 무시할 수 없다고 이야기한다. 

 

요즘 나도 팀원들에게 의도에 대해 자주 이야기하는데, 저자는 솔루션과 보안을 검토할 때 '우리는 도대체 무엇을 보호해야 하는가'라는 관점의 중요성을 강조한다. 이러한 관점이 없으면 솔루션 도입이나 보안 대책 자체가 목적이 되어버리면서 왜 그일을 하는지 모호해질 수 있다. 경험이 많은 엔지니어의 일갈이다.

 

그럼 기술력은 무엇일까? 기술력은 지식과 경험의 곱이라고 이야기한다. 맞는 말. 그래서 사이드 프로젝트 등을 진행할 때 무엇보다도 하나의 전체 과정을 경험해 보는 것이 중요한 것이다. 

 

이 책은 인프라 엔지니어나 정보 시스템 담당자를 대상으로 쓰여졌지만, 개발자도 이 정도의 인프라 내용은 알아두어야 한다고 생각한다. 얇지만 한번 일독을 강추한다. 책은 인프라 엔지니어의 역할, 서버, 운영체제, 네트워크, 스토리지, 서버 가상화, 클라우드, 구매 및 자산관리, 데이터센터, 각종 솔루션 및 보안, 인프라 운영, 대규모 인프라, 인프라 엔지니어의 커리어 로드맵에 대한 내용으로 이루어져 있다.

 

한가지 아쉬운 점은 책의 예제 제품들이 일본 현지에서 사용되는 것인데, 우리나라 실정에 맞게 내용이 조금 보완되었으면 더 좋지 않았을까 하는 생각을 해본다.예를 들어 170쪽에 APAC 지역 각 나라별 클라우드 서비스 점유율이 나오는데, 우리나라는 빠져있다. 한국어판에서라도 보완자료가 제공되었으면 더 좋았을 것이다. 참고로 2025년 현재 우리나라의 경우 AWS가 40~45%, 애저가 28~34%, 구글이 5~10%, 네이버가 5~8%, kT가 2~5% 정도라고 한다.

 

그럼에도 불구하고 내용도 좋고, 번역도 깔끔하고,  읽어보기를 추천한다.

반응형

"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."

 

금머리 케찰이 그려진 웹 API 책/한빛미디어

웹 플랫폼의 진화와 네이티브 API의 중요성

웹이 애플리케이션 플랫폼으로 변한지 꽤 오랜 시간이 되었다. 최근 등장한 PWA(Progressive Web App), WebAssembly, 그리고 수많은 브라우저 네이티브 API 덕분에  웹은 단순한 하이퍼 미디어 문서 뷰어를 넘어 완전한 애플리케이션 플랫폼으로 자리잡았다.

한빛미디어에서 출간된 <실무로 통하는 웹 API>는 오라일리에서 나온 'Web API Cookbook'의 번역서다. 이 책은 웹 애플리케이션이 실제로 실행되는 브라우저라는 플랫폼에서 제공되는 웹 API를 상세히 살펴본다. 한글판은 총 324쪽이다.

 

프레임워크에 숨겨진 브라우저 API

대부분의 웹 애플리케이션 개발자들은 리액트나 뷰와 같은 프런트엔드 프레임워크를 사용하기 때문에  브라우저 API를 직접 살펴볼 기회는 많지 않다. 하지만 이런 프레임워크 역시 내부적으로는 브라우저 네이티브 API를 활용한다. 따라서 프레임워크의 추상화 계층 이면에서 실제로 어떤 일이 일어나는지를 이해한다면  더 효율적인 코드를 작성할 수 있을 뿐만 아니라 웹 애플리케이션 프레임워크의 동작 방식을 이해하는데에도 도움이 될 것이다.

 

이 책은 API를 목적에 따라  구분하여 설명하고 있으므로 1장 비동기 API를 읽고 나서는 관심가는 API에 해당하는 장을 골라서 읽으면 된다. 

 

이 책에서 다루는 주요 API들

  • 웹 스토리지와 IndexedDB: 클라이언트 사이드 데이터 저장
  • URL 및 라우팅: SPA 라우팅의 기반 기술
  • Fetch API: 현대적인 HTTP 통신
  • DOM과 폼: 웹 개발의 기본이 되는 API
  • 웹 애니메이션: CSS 애니메이션을 넘어서는 고급 애니메이션
  • 웹 컴포넌트: 프레임워크 없이도 재사용 가능한 컴포넌트 작성
  • 파일 API: 파일 업로드/다운로드 처리
  • 성능 API: 웹 앱 성능 측정과 최적화
  • 콘솔 API: 디버깅을 위한 고급 콘솔 기능
  • CSS API: JavaScript로 스타일 제어
  • 웹 스피치 및 미디어: 음성 인식, TTS, 미디어 스트림 처리

 

웹 플랫폼의 놀라운 발전

웹 플랫폼이 정말 많이 발전했다는 걸 실감할 수 있었다. Windows API에서 제공되던 배터리 정보도 이제 Battery Status API로 웹에서 접근할 수 있다. 이는 웹이 단순한 브라우저 환경을 넘어 네이티브 앱과 경쟁할 수 있는 플랫폼으로 성장했음을 보여준다. (예전에 네트워크 상태나 배터리 API를 사용하던 윈도우 앱을 개발하던 기억이 떠오른다.)

특히 마지막 장에서는 앞으로 도입될  API를 소개하는데, 웹 블루투스, NFC,바코드, 쿠키 저장소, 결제 API 등이 있다. 이 API들이 도입된다면 웹의 플랫폼화, 특히 크로스 플랫폼화가 가속화될 것 같다.

이 책은 웹 플랫폼이 제공하는 API와 기능, 동작 방식을 이해하는데 도움이 된다.

 

번역/편집의 아쉬움.

한가지 아쉬운 점이라면 한빛에서 나온 책임에도 불구하고, 문장이 다른 책에 비해 매끄럽게 번역되지 않았다는 느낌을 준다. 

 예를 들어 109쪽을 보면 "IntersectionObserver의 브라우저 지원은 매우 좋은 편이지만 최신 브라우저를 대상으로 한다면 자바스크립트를 사용하지 않고도 게으르게 이미지 로딩을 적용할수 있습니다. "라고 되어있다. 조금 더 손을 봐서 "최신 브라우저는 IntersectionObserver를 잘 지원해 주지만, 자바스크립트를 사용하지 않아도 이미지 지연 로딩 기능을 사용할 수 있다."로  번역했다면 좀 더 깔끔했을 것 같다.  책을 읽으면서 계속 눈에 걸리는 부분이 있다. 너무 아쉽다.

 

 

반응형

+ Recent posts