ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 자바 성능 튜닝 이야기
    후기/Book Review 2018. 3. 6. 22:24


      요새 개발 일을 하다가 자주 드는 생각 중에 하나는 코드를 잘 작성하는 것도 중요하지만 시스템과 인프라적인 이해도 참 중요하다는 생각이 든다. 무슨소린가 하면 언어 문법, 성능 좋은 코드 등은 책을 통해서 얼마든지 습득하고 이해할 수 있는 부분이다(물론 직접 해봐야 체득이 되겠지만 이건 논외로 치고). 하지만 서비스를 세팅하고 운영하고 트러블 슈팅을 하는 부분들은 책으로 쉽게 얻어질 수 있는 부분들이 아니다. 경험이 많을 수록 많이 알게 되긴 하겠지만 어디서부터 시작할지 아는 것이 쉽지 않다. 그런면에서 이 책은 자바 성능에 대해 폭넓게 설명하고 있는 책이라고 할 수 있다.


    목차

    1. 디자인 패턴, 꼭 써야 한다
    2. 내가 만든 프로그램의 속도를 알고 싶다
    3. 왜 자꾸 String을 쓰지 말라는 거야?
    4. 어디에 담아야 하는지...
    5. 지금까지 사용하던 for 루프를 더 빠르게 할 수 있다고?
    6. static 제대로 한번 써 보자
    7. 클래스 정보, 어떻게 알아낼 수 있나?
    8. synchronized는 제대로 알고 써야 한다
    9. IO에서 발생하는 병목 현상
    10. 로그는 반드시 필요한 내용만 찍자
    11. JSP와 서블릿, Spring에서 발생할 수 있는 여러 문제점
    12. DB를 사용하면서 발생 가능한 문제점들
    13. XML과 JSON도 잘 쓰자
    14. 서버를 어떻게 세팅해야 할까?
    15. 안드로이드 개발하면서 이것만은 피하자
    16. JVM은 도대체 어떻게 구동될까?
    17. 도대체 GC는 언제 발생할까?
    18. GC가 어떻게 수행되고 있는지 보고 싶다
    19. GC 튜닝을 항상 할 필요는 없다
    20. 모니터링 API인 JMX
    21. 반드시 튜닝해야 하는 대상은?
    22. 어떤 화면이 많이 쓰이는지 알고 싶다
    23. 튜닝의 절차는 그때그때 달라요
    24. 애플리케이션에서 점검해야 할 대상들


      목차만 봐도 뭔가 알찬 내용들로 구성 되어 있다는 것을 알 수 있다. GC와 모니터링 부분에 대해서 궁금해서 산 책이라 16장부터 읽다가 내용이 좋아서 처음부터 읽었는데도 좋았다. 1판이 2008년, 개정판이 13년도라 자바 기술에 대해 약간 시기적 차이는 있지만 지금도 충분히 유효하고 효과적인 내용들이 더 많았다.

      String(StringBuilder, StringBuffer), static, synchornized, GC 등은 면접 단골 손님들이다. 사소한 부분들이지만 성능에 영향을 많이 주는 부분들이니 확실히 이해해야겠다.

      JMX 등 모니터링 관련된 부분들은 직접 실습해 보면 더 좋을 것 같다. 서비스에 안되면 개발서버에라도 붙여서 테스트 용으로 써봐야겠다.



    자바 성능 튜닝 이야기, 인사이트(이상민)


    '후기 > Book Review' 카테고리의 다른 글

    NoSQL 철저 입문  (0) 2018.04.19
    토비의 스프링 3.1 Vol.1  (0) 2018.04.07
    러닝 HTTP/2  (0) 2018.02.10
    UML 실전에서는 이것만 쓴다  (0) 2018.01.27
    소프트웨어 악취를 제거하는 리팩토링  (0) 2017.12.23

    댓글

Designed by Tistory.