처음 처음 | 이전 이전 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |다음 다음 | 마지막 마지막
TCP/IP 교과서 - TCP/IP를 중심으로 네트워크 원리를 파악한다!
조 캐서드 지음, 정용석 옮김 / 길벗 / 2020년 12월
평점 :
절판


최근 내가 맡아서 하는 업무 중 네트워크에 대한 이해가 필요한 일이 많았다.

그간 잘 모르는 내용은 그때그때 찾아가며 익혀갔었지만 이번 업무에서 아직 많이 부족하다고 느꼈었다.

내가 주로 웹 서비스를 개발해왔었지만, 웹과 관련된 기술 중 네트워크 기술에 대해서는 아직도 부족하다고 느낀다.

특정 네트워크 구성요소에 대해 이해했다면 이와 연관있는 다른 구성요소에 대해서도 이해가 있어야 완벽하게 이해할 수 있다고 보는데, 전반적으로 이해하려면 시간과 노력이 많이 필요하다고 생각한다.

페이스북을 통해 길벗 출판사에서 진행하는 개발자 리뷰어라는 게시글을 보게 되었다.

그중 TCP/IP 교과서라는 책을 보게 되었는데, 이전 길벗에서 출판한 Git 교과서로 Git을 쉽게 이해하는 데 많은 도움을 받았던 좋은 기억이 있어서 인지 이 책도 읽다보면 지난번처럼 또다시 도움을 받을 수 있지 않을까 싶어 신청하였다.

좋은 기회로 개발자 리뷰어로 선정되었다.

매일 한 챕터에서 두 챕터씩 분량을 정해 완독하였다.

어려운 내용이 많지만, 나는 책의 내용을 머릿속으로 그려가면서 이해하려고 했었고 특히나 그림으로 설명하는 부분도 꼼꼼히 보았다.

나에게 가장 도움이 되었던 부분을 몇가지 꼽아보자면,

첫번째, 용어와 구성요소에 대한 설명이다.

네트워크 관련 요청 사항 등의 이유로 담당자와 이야기를 해야할 경우가 있거나 다른 전공 도서에서 설명하는 내용 중 네트워크 관련 용어를 잘 알지 못하는 경우에 구글링을 통해 공부하는 편이었다.

잘 설명된 블로그를 통해서 이해하기가 쉬운 적도 있었지만, 이해가 잘 되지 않은 적도 많았다.

이 책에서는 용어와 네트워크의 각 구성 요소를 쉽게 설명되어 있고, 사례를 통해서도 이해할 수 있어서 도움이 되었다.

두번째, 실무에서 도움이될 도구와 서비스에 대한 설명이다.

간혹 서비스 개발이나 운영 중, 서비스 로직 오류 외에도 네트워크와 관련된 문제가 발생하는 경우가 있다.

이때 네트워크 담당자를 통해서 빠른 해결이 가능한 경우가 있지만, 그 전에 어떤 문제로 인해 서비스 장애가 발생했는지 확인이 필요하고, 내가 요청했던 부분이 잘 적용되었는 지에 대해서도 간혹 확인이 필요한데, 이때 알아두면 좋을 내용들에 대한 챕터가 따로 구성되어 있어 특히 도움이 많이 되었다.

이 책을 읽는 도중에도 알게된 내용을 통해 실무에서 적용해볼 수 있었다.

세번째, 개발자가 알아두면 좋은 네트워크 공격과 관련된 내용이다.

항상 보안은 서비스 운영에 가장 중요한 요소이다.

방화벽은 보안에 있어서 중요한 부분인데, 네트워크 공격을 소개하기 전 방화벽이 어떤 것이고 어떤 규칙을 통해 적용되는 지에 대해서도 설명하고 있어 내가 잘 알지 못했던 영역도 이해할 수 있었다.

또한 네트워크 공격에 대해 자격 증명, 네트워크 수준, 어플리케이션 수준, 루트 접근, 피싱, 서비스 거부 공격 등에 대해서 자세하게 알 수 있어서 다시한번 보안이 중요하다고 느꼈다.

네번째는, 우리 일상에 자주 사용하는 이메일과 스트리밍이 어떻게 처리되는 지에 대한 내용이다.

한번쯤 이메일이 어떻게 수신자에게 전달될까라고 생각은 해보았는데, 막상 찾아보지 않았었다.

이 책에서는 이메일이 따로 챕터로 구성되어 있어 재밌게 보았었다.

우리가 알고 있는 이메일이 어떤 필드로 구성되어 있는 지에 대한 기본 설명부터 내가 가장 재밌게 본 이메일이 어떻게 작동하는지에 대해 설명한다.

간략하게 적어보자면, 이메일도 다른 서비스들처럼 클라이언트와 서버로 이루어져 있는데, 양 끝에 클라이언트가 있어 네트워크를 통해 서버 사이를 이동하면서 메시지가 전달이 된다.

즉, 이메일 리더라고 불리는 클라이언트 어플리케이션이 이메일 서버에 메시지를 보내고, 이메일 서버가 수신자의 주소를 읽어서 또다른 이메일 서버에 메시지를 보내고, 메시지는 메일박스의 이메일 서버에 저장이 되는 방식으로 동작을 한다. 수신자는 이메일 서버에 주기적으로 로그인을 해서 메시지를 확인한다.

만약 누군가가 나에게 이메일이 어떤 방식으로 처리되는 지에 물어본다면 설명을 잘 할 수 있을 것이다.

그리고 이메일의 전송 프로토콜인 SMTP에 대해서도 더욱 이해도가 높아졌다.

간혹 서버에서 직접 SMTP 클라이언트 명령어를 통해 이메일 서버가 정상적으로 응답하는 지 확인하는 경우가 있다.

최근에도 이 명령어를 통해서 테스트를 해보았는데, 책에 정리된 SMTP 서버 응답 코드는 추후 테스트 시 유용하게 사용할 수 있을 듯하다.

다섯번째, IPv6에 대한 이해도가 높아졌다.

아마 이 책을 보고 싶었던 이유 중 하나가 IPv6 때문이기도 했었다.

어디선가 한번쯤 32비트의 IP 주소가 부족하다는 내용을 읽어본 적이 있을 것이다.

이런 문제로 인해 개선된 IP인 IPv6가 등장하게 되었고, 현재 많은 기업에서 IPv6 연결을 테스트하고 전환 단계에 있다고 한다.

이로 인해 개발자인 나도 IPv6에 대한 배경 지식이 있어야 하지 않을까 싶었다.

IPv6의 IP 주소 형식은 128비트로 매우 큰 주소 공간을 사용하기 때문에 많은 주소를 제공한다.

또한 인증과 개인정보가 향상 되었다는 점에서도 장점을 가지고, 간단해진 헤더 형식과 IPv6 데이터그램을 특정 프름 레벨로 표시할 수 있어 서비스 품질이 보장된다.

나는 이 챕터에서는 주로 IPv4와 다른 IPv6와 IPv4가 어떻게 IPv6에 연결되는 지에 대한 기술을 중점적으로 보았다.

여섯번째, 웹 서비스에 대한 내용이다.

아무래도 웹 서비스를 개발을 주로 하는 개발자에게 이 챕터는 필수로 추천하고 싶다.

특히 웹 서비스 구성형식과 REST에 대해 읽어보면 API 개발 등과 같이 서비스 로직 설계에 많은 참고사항이 될 것이라고 생각한다.

책의 분량이 많아서 이해하는 데에 시간이 많이 걸렸다.

아직도 완벽히 이해하지는 못했지만 내가 궁금했었고, 이해가 되지 않았었던 부분들에 대해서는 개념을 다시 다질 수 있어서 도움이 되었다.

이 책은 여러번 읽다보면 네트워크에 대한 흐름을 이해할 수 있지 않을까 싶다.

또한 업무 중 그때그때마다 궁금했던 용어들도 손쉽게 찾아볼 수 있어 도움이 될 것이라고 생각한다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
15단계로 배우는 도커와 쿠버네티스 I♥Cloud (아이러브클라우드) 20
타카라 마호 지음, 이동규 옮김 / 제이펍 / 2020년 10월
평점 :
장바구니담기


이 글에는 스포일러가 포함되어 있습니다.

시간이 지날수록 IT 서비스를 이용하는 연령대와 사람들이 다양해지고, 이에 따라 서비스가 점점 다양화되고 규모도 커지고 있다.

이로 인해 더더욱 사용자에게 안정되고 빠른 서비스를 제공해야 한다.

서비스가 점점 다양화되고 규모가 커지는 만큼 참여하는 개발자도 많아지고 있어 개발자들 간에 개발 환경의 차이로 개발 생산성과 안정성이 떨어질 수 있다.

이런 상황에서 컨테이너 기술을 사용하면 어플리케이션 실행에 필요한 것을 담아 불변의 실행환경을 만들어 개발자 간, 개발 환경 간의 차이를 없앨 수 있어 개발 생산성을 높이고 안정적으로 배포할 수 있도록 해준다.

가장 많이 쓰이는 기술이 바로 도커와 쿠버네티스이다.

쿠버네티스는 구글의 사내 운영 시스템인 Borg를 오픈 소스로 만든 것으로, 컨테이너화된 어플리케이션을 효율적으로 배포 및 운영하기 위해 설계된 오픈 소스 플랫폼이다.

쿠버네티스의 기능으로는,

① 배포 계획에 맞게 어플리케이션을 신속하게 배포 가능

② 기동 중인 어플리케이션의 스케일업/다운 가능

③ 새로운 버전의 어플리케이션을 중지 없이 업그레이드 가능

④ H/W 가동률을 높여 자원 낭비를 줄임

이 기능을 통해 다양한 환경에서 사용할 수 있고, 변화되는 환경에서 유연성과 확장성이 높고, 성능관리에 최적화되어 있다는 점으로 인해 다양한 서비스에서 사용된다.


쿠버네티스는 클러스터 관리를 담당하는 마스터와 컨테이너화된 어플리케이션을 실제로 실행하는 노드로 구성된다.

마스터는 클라이언트로부터 요청을 받아 어플리케이션의 배포, 스케일 업/다운, 컨테이너의 버전 업 등의 요구를 처리하는데, 다중화가 가능하다. 유저의 요청이 늘어나 처리 능력을 늘려야할 때, 기본적으로 컨테이너의 수를 늘리면 되지만 노드의 수를 늘려야 할 경우가 있다. 이 노드의 수를 늘리거나 줄여야하는 작업은 어플리케이션이 기동 중에도 가능하다.

도커는 컨테이너 기반 오픈 소스 가상화 플랫폼이다.

다양한 어플리케이션과 개발환경을 컨테이너로 추상화하고 동일한 인터페이스를 제공하여 배포 및 관리를 단순하게 해준다.

도커는 클라이언트, 서버 모델로 이루어져 있는데, 서버인 도커 데몬이 클라이언트인 도커 커맨드로부터 요청을 받아 동작한다.


쿠버네티스와 도커에 대해 책에서 배운 내용을 간단히 정리해보았다.

쿠버네티스와 도커에 대해서는 몇년 전부터 알고 있었지만, 실제로 이 컨테이너 환경에서 개발을 진행해본 건 최근 1년 정도인듯하다.

개념으로는 알고 있지만 실제로 컨테이너 환경에서 개발을 하다보니, 더더욱 공부가 필요함을 느꼈다.

구글링을 통해 그때마다 궁금한 점을 찾아보았지만, 이 책은 처음부터 끝까지 단계별로 알아갈 수 있어 좋았다.

개인적으로 이 책을 읽으면서 좋았던 점을 꼽자면,

첫번째로, 설명에 대한 그림이 함께 첨부되어 있어 이해도가 더욱 높아졌던 부분이다.




두번째로는 각 챕터별로 배운 내용을 정리해주는 부분이 있어 반드시 알고 넘어가야할 개념을 정리해볼 수 있었다.



세번째로는 챕터별로 보강할 참고 링크들을 제공해주는 부분이 있어 이 링크들의 글을 통해 좀 더 개념을 다질 수 있었다.



네번째로는 설정 정보들에 대해 설명글 뿐 아니라 표로도 정리되어 있어 나에게는 가독성을 더욱 높여주었다.



이 책을 다 읽은 후, 다시 처음부터 읽고 있는 중이다.

객관적으로 완독을 했다고 해서 완벽히 알았다고 생각하지 않는다.

지금은 부록에 안내되어 있는 설치하는 방법에 따라 내 PC에 설치를 해보았고, 내용대로 따라해보고 있다.

그래도 첫 완독 이후, 도커와 쿠버네티스에 대해 이해도가 많이 높아진 편이다.

나와 같이 도커와 쿠버네티스에 대한 개념을 다지고 싶으신 분들에게 이 책을 추천한다.

분량이 많아 부담이 될 수 있지만, 그래도 완독을 하고 나면 읽기를 정말 잘했다라고 생각할 것이다.

도커와 쿠버네티스 관련 책을 찾고 계시는 분들이 나의 후기가 조금이나마 도움이 되길 바란다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
국가공인 SQLD 자격검정 핵심노트 - 출제 경향을 관통하는 핵심 문제와 정확한 해설
조시형 외 지음 / DBian(디비안) / 2020년 12월
평점 :
구판절판


내 주변 지인 개발자들 중 대부분이 SQLD 자격증을 갖고 있다.

그만큼 SQLD 자격증을 취득하려고 하는 분들이 점점 늘어나고 있고, 특히 대학생 때부터 이 자격증을 취득하기 위해 공부한다고 들었다.


내가 취득할때까지만 해도 SQLD 관련 문제집이 없어 공식교재인 한국데이터진흥원에서 출간한 『SQL 전문가 가이드』로만 공부했었는데, 당시 공부를 하면서 이 자격증에 대한 문제집이 있었으면 좋겠다라고 생각했었다.

최근 디비안에서 『국가공인 SQLD 자격검증 핵심노트』라는 책을 새롭게 출간했다는 소식을 들었다.

그간 나는 디비안에서 출간했던 『불칠전한 SQL 프로그래밍』, 『친절한 SQL 튜닝』, 『오라클 성능 고도화 원리와 해법』의 책으로 DB관련 부족한 부분을 공부했었다.

정확하게 몰랐던 부분을 새롭게 개념을 다지게 도와주었고, 무엇보다 실무에 적용해볼 수 있는 부분을 배워서 직접 운영중인 서비스에도 적용해본 경험도 갖게해주었다.

특히나 이 책들을 읽으며 좋았던 부분은 개인적으로 이러한 내용들에 대한 설명이 자세하고 친절하게 되어 있다는 점이었다.


올해 개인적으로 SQLP 자격증 취득에 도전해보려고 한다.

SQLP를 어떻게 공부하면 좋을지 알아보던 중, 내가 자주 방문하는 DBian 포럼이라는 네이버 카페에서 『국가공인 SQLD 자격검증 핵심노트』 라는 책을 알게되었다.

좋은 기회로 서평단에 참여하게 되어 이 책을 읽을 기회를 갖게 되었다.


개인적으로 나는 책을 읽기 전 서문을 읽는다.

왜냐하면 서문에 저자가 어떤 의도로 책을 썼는지 알 수 있어 이 내용을 참고해서 읽으면 내용에 좀 더 쉽게 다가갈 수 있다고 생각한다.

보내주신 책을 받아보자마자 항상 그랬듯이 서문부터 읽었다.

"진짜 실력을 쌓는 연습은 등한시한 채 자격증만을 목표로 공부하는, 그러다 보니 SQL을 눈으로만 공부하는 이들이 점점 느는 현실이 늘 안타까웠다"라는 부분에서 SQLP를 준비하는 나도 자격증이 목표가 아닌 진짜 실력을 쌓는 것을 중점으로 공부해야겠다라는 생각을 다시 갖게해주었다.


책을 받은 이후부터 처음부터 끝까지 쭉 훑어보았다.

마지막장을 보고 나서 느낀점은, 문제집 형태로 되어있지만 해설이 정말 친절하다는 점이다.

그간 다른 자격증 취득을 위해 여러 문제집을 보았지만, 해설이 부실하여 이해가 되지 않은 문제들도 많았다.

하지만 이 책은 문제에 대한 설명이 정말 친절하고 자세히 쓰여져 있다.

뿐만 아니라 기본문제, 핵심정리문제, 실전 모의고사의 세 형태로 나뉘어져있어 기본 개념을 정리하고, 이후 각 단원에서 익힌 개념이나 문법을 정리할 수 있고, 실제 시험과 동일하게 모의고사를 풀어볼 수 있어 시험에 대한 대비를 할 수 있게 제공해준다.


마지막에 쓰여있는 부록에서는 오라클 설치나 시험에서 헷갈릴 수 있는 부분이 정리가 되어 있어 시험 직전에 이 내용을 한번 더 훑어보면 도움이 될 것으로 생각한다.

SQLD, SQLP를 준비하는 분들에게 추천하지만, 가장 중요한 것은 자격증 취득이 목적이 아닌 진짜 실력을 키우는 마음으로 공부하자고 말하고 싶다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
자바 개발자를 위한 97가지 제안 - 73인의 전문가에게 듣는 자바 컬렉션
케블린 헤니.트리샤 지 지음, 장현희 옮김 / 제이펍 / 2020년 12월
평점 :
장바구니담기


이 글에는 스포일러가 포함되어 있습니다.

이 책은 JVM, Garbage collection, 변수 사용, 주석, null, 테스트, JDK, 코드 작성법 등 기술적인 이야기 이외에 면접, 자격증, 좋은 개발자가 되기 위한 방법 등 다양한 내용으로 이루어져 있습니다.

알고 있었던 내용도 있었지만 몰랐던, 명확하게 알지 못했던 내용들도 많았습니다.


책을 읽을때마다 느끼는 것이지만 알아야 할 영역이 많다고 느낍니다.

특히 주 언어인 자바에 대한 이해와 코드를 잘 다루고 활용하는 방법은 매순간 지금도 알아가고 있다고 생각합니다.


책 제목이 자바 개발자로 한정되어 있어 자바 개발자만 읽어야 하는 책인가라고 생각이 들 수 있지만 이 책을 읽었던 제가 보기에는 자바 개발자뿐만 아니라 모든 개발자분들이 읽으면 도움이 될 내용이 많습니다.


댓글(0) 먼댓글(0) 좋아요(1)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
처음 처음 | 이전 이전 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |다음 다음 | 마지막 마지막